2013-07-16 79 views
0

我有一個div:如何執行甚至當DIV拖動的點擊數的事件嗎?

<div 
    id="up" 
    onmousedown="mousedown('url(/scanToUserBox/img/cpt_subfunc_005_prev_p.png)', this)" 
    onclick="changePage('up')"> 
</div> 

當我按下它的onmousedown事件被觸發,但是當我拖着從按鈕並運走的點擊,則不會觸發onclick事件。如何在不使用onmouseout的情況下觸發它? (ondrag當不支持)

+0

使用'document.onmouseup'而不是'element.onclick'。 – Teemu

+0

@Teemu受此拖累 – raam86

+0

@ raam86後不會着火沒有?我已經使用了好幾年了,現在你告訴我它不起作用。 )。請檢查[this fiddle](http://jsfiddle.net/cww55/6/)。儘管在mousedown函數中附加'document.mouseup'比inline更好。 – Teemu

回答

0

我建議增加聽衆的股利。然後你可以像這樣使用它:

//get div 
var div = document.getElementById('up'); 
//Define a funcion where you do what you want on mouse release. 
//Remove the listener after you are done. 
function up() { 
    //console.log("up") 
    //do stuff 
    window.removeEventListener('mouseup', up); 
} 
div.addEventListener('mousedown', function (e) { 
    //console.log("down"); 
    //Do stuff 
    //Call mouseup when you are done with mouse down. 
    window.addEventListener('mouseup', up); 

}) 
相關問題