闲来无事,信手写了个简单的拖动层,支持多浏览器,代码很少。
<!
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 >
< title > 最简单的拖动层-飘遥http://blog.csdn.net/zxjay </ title >
</ head >
< body >
< div id ="f" style ="position: absolute; width: 500px; height: 350px; background-color: #ccc;
top: 150px; left: 200px; z-index: 101; border: solid 1px blue;" >
< div id ="title" style ="background-color: Blue; cursor: move; height: 20px; color: #fff;
font-size: 13px; padding-top: 5px; padding-left: 10px;" >
最简单的拖动层-飘遥http://blog.csdn.net/zxjay
</ 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;
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;
fdiv.style.left = (ev.clientX - posX) + "px";
fdiv.style.top = ev.clientY - posY + "px";
}
</ script >
</ body >
</ html >
< html xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< title > 最简单的拖动层-飘遥http://blog.csdn.net/zxjay </ title >
</ head >
< body >
< div id ="f" style ="position: absolute; width: 500px; height: 350px; background-color: #ccc;
top: 150px; left: 200px; z-index: 101; border: solid 1px blue;" >
< div id ="title" style ="background-color: Blue; cursor: move; height: 20px; color: #fff;
font-size: 13px; padding-top: 5px; padding-left: 10px;" >
最简单的拖动层-飘遥http://blog.csdn.net/zxjay
</ 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;
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;
fdiv.style.left = (ev.clientX - posX) + "px";
fdiv.style.top = ev.clientY - posY + "px";
}
</ script >
</ body >
</ html >
经测试,IE6/7,FF,Opera9,Safari for windows 3 支持的都不错。