當前位置:菜譜大全網 - 菜譜 - JavaScript的Div拖拽,使用構造函數,鼠標移動過快會使onmousemove無效。怎麽解決?

JavaScript的Div拖拽,使用構造函數,鼠標移動過快會使onmousemove無效。怎麽解決?

妳的代碼沒用,排版太亂。我會直接拖拽自己的代碼給妳參考。這段代碼是我無聊的時候才寫的,所以沒有寫吸附和地域限制。可以參考修改壹下。使用方法在最下面。

功能?單擊移動(id){

var?_這個?=?這個;

這個ele?=?document . query selector(id);

這個,左邊?=?this . ele . offset left;

這個.托普?=?this . ele . offsettop;

this.ele.onmousedown?=?功能(ev){

_ this . mdown(ev);

}

}

ClickMove.prototype.mDown?=?功能(ev){

var?_這個?=?這個;

如果(?getComputedStyle(this.ele)。位置?!=?絕對的?)?this.ele.style.position?=?相對的';

var?eleX?=?ev.clientX?-?this . ele . offset left;

var?艾麗?=?ev.clientY?-?this . ele . offsettop;

document . document element . onmousemove?=?功能(ev){

_this.ele.style.left?=?ev.clientX?-?eleX?-?_this.left?+?px’;

_this.ele.style.top?=?ev.clientY?-?艾麗?-?_this.top+?px’;

}

document . document element . onmouseup?=?函數(){

this.onmousemove?=?null

}

}

/*

妳只需要給元素壹個寬高的背景,不需要給別人。

用法:寫ID或類名

上課模式演示:?var?div1?=?新的?單擊move(' . box 1 ');

Id模式演示:?var?div1?=?新的?單擊移動(# box 1 ');

*/