JavaScript函数仅用于一个div,而不是整个文档

JavaScript函数仅用于一个div,而不是整个文档,javascript,jquery,Javascript,Jquery,对于合成,我需要以下代码来避免无意中的点击: (()=>{ 设lock=0; const prevent=e=>{ 如果(锁!==2) 返回; e、 预防默认值(); e、 停止传播(); }; 常数解锁=e=>{ 防止(e); setTimeout(()=>lock=0); }; addEventListener('click',prevent,true); addEventListener('pointerdown',e=>lock=1,true); addEventListener('p

对于合成,我需要以下代码来避免无意中的点击:

(()=>{
设lock=0;
const prevent=e=>{
如果(锁!==2)
返回;
e、 预防默认值();
e、 停止传播();
};
常数解锁=e=>{
防止(e);
setTimeout(()=>lock=0);
};
addEventListener('click',prevent,true);
addEventListener('pointerdown',e=>lock=1,true);
addEventListener('pointermove',e=>lock&&(lock=2),true);
addEventListener('pointerup',unlock,true);
addEventListener('pointercancel',unlock,true);
})();
物理{
宽度:300px;
高度:300px;
背景颜色:蓝色;
}
试试看

试一试


您需要首先选择div,然后将处理程序添加到该div:

let div = document.getElementById('physics');
div.addEventListener('click', prevent, true);
div.addEventListener('pointerdown', e => lock = 1, true);
div.addEventListener('pointermove', e => lock && (lock = 2), true);
div.addEventListener('pointerup', unlock, true);
div.addEventListener('pointercancel', unlock, true);

您需要首先选择div,然后将处理程序添加到该div:

let div = document.getElementById('physics');
div.addEventListener('click', prevent, true);
div.addEventListener('pointerdown', e => lock = 1, true);
div.addEventListener('pointermove', e => lock && (lock = 2), true);
div.addEventListener('pointerup', unlock, true);
div.addEventListener('pointercancel', unlock, true);

看起来不错,非常感谢!看起来不错,非常感谢!