完成效果:

演示地址:http://codepen.io/anon/pen/jPbYWq

HTML:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>[js小练习]:DOM操作</title>
</head>
<body><div id="testField"></div><div class="coverBg" id="coverBox"><div class="selBox"><dl><dt>选择颜色</dt><dd id="red" class="commonEle">红</dd><dd id="green" class="commonEle">绿</dd><dd id="blue" class="commonEle">蓝</dd></dl> <dl><dt>定制尺寸</dt><dd class="comEle"><label for="olength">输入长度值</label><input type="text" id="olength" name="length"></dd><dd class="comEle"><label for="owidth">输入宽度值</label><input type="text" id="owidth" name="width"></dd></dl><dl class="btn-list"><dd><button class="btnEle" id="offBtn" >取消</button></dd><dd><button class="btnEle btn-save" id="saveBtn">保存</button></dd></dl></div>
</div></body>
</html>

  

界面呈现:

    *{padding: 0;margin:0;}body{font-family: "microsoft yahei";}#testField{width: 120px;height: 120px;background-color: #333;position: absolute;top: 0;right: 0;bottom: 0;left: 0;margin:auto;}.coverBg{ /*遮罩层*/display: none;position: fixed;width: 100%;height: 100%;background-color: rgba(0,0,0,.4);}.selBox{width: 200px;height: 300px;padding:10px;font-size: 13px;border-radius:3px;background-color: rgba(255,255,255,.4);position: absolute;top: 0;right: -350px;bottom: 0;left: 0;margin:auto;box-shadow: 0 0 6px rgba(0,0,0,.3);}dl{display: inline-block;}dl dt{font-size: 13px;font-weight: bold;margin: 5px 0;padding-bottom: 5px;border-bottom: 1px solid #f7f7f7;}.commonEle{    display:inline-block;width: 50px;height: 50px;border-radius: 25px;text-align: center;line-height: 50px;color:#fff;float: left;margin:5px 8px;}#red{background-color: red;}#green{background-color: green;}#blue{background-color: blue;}.comEle {margin: 10px;
}.comEle input {margin: 5px 0;width: 100%;height: 24px;border: 1px solid #999;border-radius: 3px;box-shadow: inset 0 0 3px rgba(0,0,0,.3);
}.btn-list dd{float: left;
}.btnEle {padding: 5px 25px;border: 0;outline: 0;box-shadow: 0 1px 2px rgba(0,0,0,.075);border-radius: 2px;margin: 5px 11px;color: #666;
}.btn-save{background-image: -webkit-gradient(linear, left top, left bottom, from(#e3262e), to(#ab171e));background-image: -webkit-linear-gradient(#e3262e, #ab171e);background-image: linear-gradient(#e3262e, #ab171e);text-shadow: 0 -1px rgba(0, 0, 0, 0.11);color: #fff;
}

 

JS部分:


var oField=document.getElementById('testField');
var oCover=document.getElementById('coverBox');
var oRed=document.getElementById('red');
var oGreen=document.getElementById('green');
var oBlue=document.getElementById('blue');
var olength=document.getElementById('olength');
var owidth=document.getElementById('owidth');
var oOffBtn=document.getElementById('offBtn');
var oSaveBtn=document.getElementById('saveBtn');olength.οninput=function(){
var h_value=olength.value +"px";
oField.style.height=h_value;
}
owidth.οninput=function(){
var w_value=owidth.value +"px";
oField.style.width=w_value;
}oField.οnclick=function(){oCover.style.display="block";}oRed.οnclick=function(){oField.style.backgroundColor="red";
}oGreen.οnclick=function(){oField.style.backgroundColor="green";
}oBlue.οnclick=function(){oField.style.backgroundColor="blue";
}oOffBtn.οnclick=function(){oCover.style.display="none";oField.style.height="120px";oField.style.width="120px";oField.style.backgroundColor="#333";//取消的时候清空input数值olength.value='';owidth.value='';
}oSaveBtn.οnclick=function(){oCover.style.display="none";//保存的时候清空input数值olength.value='';owidth.value='';
}

  

转载于:https://www.cnblogs.com/kevinCoder/p/4482281.html

js练习【DOM操作】相关推荐

  1. js hover 触发事件_为什么说JS的DOM操作很耗性能

    想问这样的问题,其实是自己心中没有个谱,一直用 js 计算性能来衡量 浏览器dom 操作性能.js性能和浏览器性能其实是两码事. 这个问题很抽象,它里面涉及挺多个小的知识点. 重申一点,js 操作 D ...

  2. 原生js循环展示dom_为什么说JS的DOM操作很耗性能

    想问这样的问题,其实是自己心中没有个谱,一直用 js 计算性能来衡量 浏览器dom 操作性能.js性能和浏览器性能其实是两码事. 这个问题很抽象,它里面涉及挺多个小的知识点. 重申一点,js 操作 D ...

  3. JS的DOM操作1--获取元素与修改元素(附带动图案例)

    1.获取元素与修改元素 https://blog.csdn.net/TroyeSivanlp/article/details/120580055 2.创建自定义属性和节点 https://blog.c ...

  4. 失去jQuery Bloat ­ —使用NodeList.js进行DOM操作

    p.tip {background-color: rgba(128,128,128,0.05);border-top-right-radius: 5px;border-bottom-right-rad ...

  5. JS的DOM操作3--删除事件,注册事件与冒泡⭐⭐⭐(附带动图案例)

    1.获取元素与修改元素 https://blog.csdn.net/TroyeSivanlp/article/details/120580055 2.创建自定义属性和节点 https://blog.c ...

  6. js 原生dom 操作

    一. 首先要了解什么是 DOM? DOM: 全称 Document Object Mode 文档对象模型,表示由多层节点构成的文档. document: 表示每个文档的根节点,它的唯一子结点是 htm ...

  7. JS的DOM操作——style的操作

    对于JS操作文档中的元素,改变其的样式特征需要用到一个属性--style 常见操作:获取的元素点(·)style.xx(需要设置或修改的属性) 代码演示:例如修改div块的背景颜色 <style ...

  8. JS的dom操作基础——获取元素

    系统提供的方法 在H5之前的技术: 1.getElementById("目标元素的id值")  通过标签的id获取,如果未找到返回null. 2.getElementsByClas ...

  9. js之dom操作练习 ---- js篇

    一.自动计数器 <html> <head> <script type="text/javascript"> var c=0 var t func ...

  10. js的dom操作,onmouseover事件,onmouseleave事件,定时器

    样式 onmouseover鼠标放上改变触发事件 onmouseleave鼠标离开改变触发事件 <!DOCTYPE html> <html><head><me ...

最新文章

  1. GridView的编辑,更新,取消,删除等功能演示
  2. 大话设计模式读书笔记--4.代理模式
  3. 35 利用构造函数和原型对象实现继承
  4. 阿里二面,原来我对自动化测试的理解太浅了
  5. 6款强大的jQuery插件 创建和加强网站布局
  6. Mongodb 请求处理流程
  7. 灵活、高效的云原生集群管理经验:用 K8s 管理 K8s
  8. s:selected的用法
  9. Apache 的管理及优化web
  10. byte和bit的关系
  11. 48张图|手摸手教你性能监控、压测和调优
  12. 修改项目名称之后,访问不到项目的问题
  13. java怎么给坦克上图片_Java坦克大战 (七) 之图片版
  14. 23种设计模式(十)对象创建之构建器
  15. python培训全套免费教程百度云202
  16. 命令行下载网页视频方法
  17. java 夏令时_Java里面的夏令时
  18. C++之我见--delete指针
  19. 设置jsp打开的默认方式
  20. 工控机CF卡槽无法使用的解决方案

热门文章

  1. STL——queue、priority_queue、deque
  2. armbian 斐讯n1_斐讯N1刷入Armbian 更换国内系统源更换国内软件源修改DNS
  3. 库卡机器人配重_干货 | 库卡机器人使用教程
  4. 如何只用CSS做到完全居中
  5. 迅视资管 5G消息有望在今年底商用
  6. java mediainfo.dll_求mediainfo.dll的函数集或用法
  7. IPv6 OSPFv3 和区域认证【下一代互联网05】
  8. 报错异常:java.io.NotSerializableException: daqi.base_io.Student
  9. Thingsboard入门教程:本地环境搭建和源码编译安装,献给thingsboard编译失败的同学,教程不断完善中,文章最后是thingsboard常见编译失败的问题总结
  10. TeamViewer远程访问和控制功能现已支持所有安卓设备