我目前正在开发一个框架,并且我有这个类似jquery的对话框,我希望能够用鼠标移动它。
问题是我试图不在这个项目中使用任何库或覆盖用户可能想要使用的东西。
如果我只是使用onmousemove
属性的div
,如果鼠标离开,而仍然拖动它-它将停止移动。是否有一种方法可以暂时覆盖window.onmousemove
或其他答案?
主要思想是使用window event listener
并将div
样式位置设置为absolute
var m = document.getElementById('move');
m.addEventListener('mousedown', mouseDown, false);
window.addEventListener('mouseup', mouseUp, false);
function mouseUp()
{
window.removeEventListener('mousemove', move, true);
}
function mouseDown(e){
window.addEventListener('mousemove', move, true);
}
function move(e){
m.style.top = e.clientY + 'px';
m.style.left = e.clientX + 'px';
};