87,996
社区成员




<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: 1; 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;" onclick="a(s)">层的标题</div>
层的内容 </div>
<script type="text/javascript">
var posX;
var posY;
fdiv = document.getElementById("f");
document.getElementById("title").onmousedown=function(e)
{
alert(typeof(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>
<style type="text/css">
#tt{
position: absolute;
border: 1px solid red;
width:200px;height:200px;
background-color: #ddd;
}
</style>
<div id="tt"></div>
<script type="text/javascript">
function move(e){
var oe=e||window.event;
var $this = this;
var startX = oe.clientX - $this.offsetLeft;
var startY = oe.clientY - $this.offsetTop;
document.onmousemove = function (e) {
var oe = e || window.event;
$this.style.left = oe.clientX - startX + "px";
$this.style.top = oe.clientY - startY + "px";
};
document.onmouseup = function () {
document.onmousemove = null;
document.onmouseup = null;
if ($this.releaseCapture) {
$this.releaseCapture();
}
};
if ($this.setCapture) {
$this.setCapture();
}
}
document.getElementById("tt").onmousedown=move;
</script>