正好用到一个需要拖动div的东东,虽然实现方式有很多种,不过我觉得这个还算比较优雅,其实也是网上找的改了改,特此记录下来。
代码
var MoveDiv = function(){};
/**
* @deprecated 移动div的方法
* @param{id} id 要移动的层ID
*/
MoveDiv.Move=function(id)
{
var o=document.getElementById(id);
o.onselectstart = function()
{
return(false);
};
o.onmousedown = function(e) {
e = e||window.event;
var x=e.layerX||e.offsetX;
var y=e.layerY||e.offsetY;
x=x-document.body.scrollLeft;
y=y-document.body.scrollTop;
document.onmousemove = function(e)
{
e=e||window.event;
o.style.left=(e.clientX-x)+"px";
o.style.top=(e.clientY-y)+"px";
};
document.onmouseup=function()
{
document.onmousemove=null;
};
};
}
/**
* @deprecated 移动div的方法
* @param{id} id 要移动的层ID
*/
MoveDiv.Move=function(id)
{
var o=document.getElementById(id);
o.onselectstart = function()
{
return(false);
};
o.onmousedown = function(e) {
e = e||window.event;
var x=e.layerX||e.offsetX;
var y=e.layerY||e.offsetY;
x=x-document.body.scrollLeft;
y=y-document.body.scrollTop;
document.onmousemove = function(e)
{
e=e||window.event;
o.style.left=(e.clientX-x)+"px";
o.style.top=(e.clientY-y)+"px";
};
document.onmouseup=function()
{
document.onmousemove=null;
};
};
}