一個問題,我該怎麼辦與jQuery使mousemove事件被激活只有當鼠標左鍵被保持按下,並儘快按鈕得到釋放鼠標移動事件停止?jQuery的:在事件
0
A
回答
1
簡單的方法是保持一個標誌,只有在按住左鍵時纔將其設置爲真。這意味着您必須在按下鼠標左鍵時將其設置爲true,並在釋放時將其重置爲false。然後,只有當該標誌爲真時,您才能對mousemove執行操作。
它不是一個jQuery具體的解決方案,但對於這樣的問題,一個通用的模式,因此jQuery的可能會提供一個更好的解決方案。
您可能需要採取特殊照顧的情況下,就像失去輸入焦點或將鼠標光標會該分區外,同時保持按下左鍵。
5
在這裏,我結合對鼠標按下了mousemove
事件,並解除綁定上mouseup
。我在jQuery中使用了很酷的功能,因此可以將其他mousemove事件添加到此選擇器中,但只有您想要解除綁定的那個事件纔會被刪除。他們被稱爲Namespaced Events。
$("#yourdivid").mousedown(function(e){
if(e.which == 1){
$(this).bind('mousemove.coolnamespace', function(e){
// Your mousemove event
});
}
}).mouseup(function(e){
if(e.which == 1) $(this).unbind('mousemove.coolnamespace');
})
編輯:我更新了我的答案,使用標準化領域which
。 jQuery規範化爲1 =左,2 =中,3 =右。取決於瀏覽器,button
的值將有所不同。
0
您綁定的mousedown事件和鼠標移動調用該函數的內部,並使用jQuery的解除綁定事件擺脫鼠標移動的;
var $button = $("ELEMENT HERE");
$button.mousedown(function(){
$(this).mousemove(function(){
//Events here
});
}).mouseup(function(){
$(this).unbind("mousemove");
});
相關問題
- 1. JQuery的事件
- 2. JQuery的事件
- 3. jQuery的事件
- 4. jQuery的事件
- 5. jQuery的事件
- 6. jQuery的事件()
- 7. jQuery的事件
- 8. jQuery的事件
- 9. 在jQuery的單擊事件
- 10. jQuery的popstate事件在Firefox
- 11. 。在事件jquery上的div
- 12. 在onclick事件的Jquery
- 13. 事件CONTEX在jQuery的
- 14. jQuery事件內部事件
- 15. 事件時的jQuery
- 16. 與jQuery的事件
- 17. jQuery的beforeScroll事件
- 18. JQuery的.change - 事件
- 19. jQuery的 - hashchange事件
- 20. jQuery的:事件CSS
- 21. jQuery的ajaxLoad事件
- 22. jQuery的document.on事件
- 23. jQuery的.ClickOut事件
- 24. 的jQuery做事件
- 25. jQuery的:AJAX事件
- 26. jQuery的事件:通知過去事件
- 27. 標籤事件中的jQuery onchange事件
- 28. jQuery的事件觸發 - 取消事件
- 29. jQuery的事件「檢查」事件
- 30. 事件內部的jQuery日曆事件
只是綁定到'mousemove'上'mousedown',並解除綁定在'mouseup'。 –