2013-07-15 41 views
0

我有一個div。如何防止使用javascript執行onmousedown和div的onmouseup?

<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

只需使用javascript刪除屬性即可。 –

回答

0

我終於找到了解決辦法。它是event.returnValue = false;

0

爲什麼你不能使用JQuery和基於操作附加事件?你只限於JavaScript? Javascript示例:

document.getElementById('down')。addEventListener('mousemove',elementMove,false);

+0

我看不到OP在哪裏說他們不能使用jQuery? –

+0

我不想刪除這些事件。我只是想阻止它在某些情況下執行。 – pmark019

0

使用jQuery,並附加功能的MouseUp和MouseDown事件中,你可以根據條件執行代碼:

$("#down").mouseup(function(){ 
    if(a=b) { 

    } 
}).mousedown(function(){ 
    if(b=c) { 

    } 
}); 
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; 

你必須弄清楚什麼時候把「destdiv.onmousedown」爲null,使其爲你工作

相關問題