抓住一点:一系列的加减操作都是为了获取浮动框左上角应该停留在哪个位置
当然是0 你自己设置的。
按下事件还没执行呢
可能这个事件监听函数没有绑定成功,看看an(id)函数的参数是否是正确的id
有的,你仔细看,dialog里面有个class="dialogTile"
onmousemove这个事件绑定到document上 “document.onmousemove“
都一样的
onmousedown中要获得鼠标相对于浮层左上角的位置吧
是左右格子可以相互拖拽交换吧?
为了获取鼠标按下移动时的具体坐标位置。
非常感谢!
好想法
担心你拖太快,鼠标拖出去元素的范围了,这个时候这个时候up事件就不在元素上面触发了,容易形成不按键也能拖着到处跑的bug……
我也有这个问题,是这样解决的:
将监听事件放到一个函数中,再放到window.onload中就可以了,我这样后就好了,但具体原因不清楚哈
function dd(){ g('dialogDrag').addEventListener('mousedown',function(e){ var e=e || window.event; startX=e.pageX-g('dialogMove').offsetLeft; console.log(startX); startY=e.pageY-g('dialogMove').offsetTop; drag=true; }) } window.onload=function(){dd();}
在代码编辑器里面看看
鼠标。