本文实例讲述了JS实现简洁、全兼容的拖动层。分享给大家供大家参考。具体分析如下:
这是一款最简洁的JS层拖动代码,全兼容ie、ff、opera、safari……每一种浏览器都有对应的判断和实现方法,你只需复制代码到你的网页中就可使用。水平高的朋友可以继续修改,添加更多方法,使其功能更强大。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>JS拖动层</title> </head> <body> <div id="f" style="position: absolute; width: 216px; height: 138px; background-color: skyblue;font-size: 12px; top: 210px; left: 180px; z-index: 101; border: solid 1px blue;"> <div id="title" style="background-color: Blue; cursor: move; height: 20px; color: #fff;font-size: 12px; padding-top: 5px; padding-left: 10px;">层的标题</div> 层的内容 </div> <script type="text/javascript"> var posX; var posY; fdiv = document.getElementById("f"); document.getElementById("title").onmousedown=function(e) { if(!e) e = window.event; //IE posX = e.clientX - parseInt(fdiv.style.left); posY = e.clientY - parseInt(fdiv.style.top); document.onmousemove = mousemove; } document.onmouseup = function() { document.onmousemove = null; } function mousemove(ev) { if(ev==null) ev = window.event;//IE fdiv.style.left = (ev.clientX - posX) + "px"; fdiv.style.top = (ev.clientY - posY) + "px"; } </script> </body> </html>
希望本文所述对大家的javascript程序设计有所帮助。
您可能感兴趣的文章:
- js用拖动滑块来控制图片大小的方法
- JS实现网页游戏中滑块响应鼠标点击移动效果
- JS实现左右拖动改变内容显示区域大小的方法
- js实现div拖动动画运行轨迹效果代码分享
- avalon js实现仿微博拖动图片排序
- JS拖动鼠标画出方框实现鼠标选区的方法
- JS+CSS实现的拖动分页效果实例
- JS实现可缩放、拖动、关闭和最小化的浮动窗口完整实例
- js实现图片拖动改变顺序附图
- JS响应鼠标点击实现两个滑块区间拖动效果