您的位置:首页 > Web前端 > JQuery

jquery实现dom元素的移动

2015-05-12 16:58 232 查看
//需要传递一个jquery的dom对象,该dom就可以在页面移动。
function domMove(j_dom){
j_dom.mousedown(function(e){
var dh=document.body.scrollHeight;
var sh=document.body.scrollWidth;
j_dom.css("cursor","move");//改变鼠标指针的形状
var offset = j_dom.offset();//DIV在页面的位置
var x = e.pageX - offset.left;//获得鼠标指针离DIV元素左边界的距离
var y = e.pageY - offset.top;//获得鼠标指针离DIV元素上边界的距离
$(document).bind("mousemove",function(ev){//绑定鼠标的移动事件,因为光标在DIV元素外面也要有效果,所以要用doucment的事件,而不用DIV元素的事件
j_dom.stop();
var _x = ev.pageX - x;//获得X轴方向移动的值
var _y = ev.pageY - y;//获得Y轴方向移动的值
_x=_x<0?0:_x;
_y=_y<0?0:_y;
_x=_x>sh-j_dom.width()?sh-j_dom.width():_x;
_y=_y>dh-j_dom.height()?dh-j_dom.height():_y;
j_dom.animate({left:_x+"px",top:_y+"px"},10);
});
$(document).mouseup(function(){
j_dom.css("cursor","default");
$(this).unbind("mousemove");
})
});
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jquery html元素移动