我有一个div。
<div id="down"
onmousedown="mousedown('url(/scanToUserBox/img/cpt_subfunc_005_next_d.png)', this)"
onmouseup="mouseup('url(/scanToUserBox/img/cpt_subfunc_005_next_i.png)', this)"
onclick="changePage('down')">
</div>
我想在某些情况下阻止事件的执行。我已经尝试禁用div但仍然执行事件。
答案 0 :(得分:0)
为什么不能使用JQuery并根据操作附加事件?你只限于JavaScript吗? Javascript示例:
document.getElementById(&#39; down&#39;)。addEventListener(&#39; mousemove&#39;,elementMove,false);
答案 1 :(得分:0)
使用JQuery,并将函数附加到mouseup和mousedown事件,您可以根据条件执行代码:
$("#down").mouseup(function(){
if(a=b) {
}
}).mousedown(function(){
if(b=c) {
}
});
答案 2 :(得分:0)
我相信,如果你只是通过javascript添加你的事件处理程序,如
var desDiv = document.getElementById('down');
desDiv.addEventListener('mousedown', mymousedownfn, false);
//you could have removed the eventlistener with
desDiv.removeEventListener('mousedown',mymousedownfn,false);
由于您已将eventlistener添加为div的属性,我认为javascript也会成为属性值的一部分,然后您需要将其设置为null以将其删除。像
这样的东西var desDiv = document.getElementById('down');
destdiv.onmousedown = null;
您必须弄清楚何时设置&#39; destdiv.onmousedown&#39;为null使它适合你
答案 3 :(得分:0)
我终于找到了解决方案。它是event.returnValue = false;