jquery实现dom元素的移动

来源:互联网 发布:电脑屏幕录像软件2017 编辑:程序博客网 时间:2024/05/21 07:01
//需要传递一个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");          })  });}

0 0