什麼所有事件都可以使用jQuery以編程方式觸發?當使用jQuery Vs觸發事件觸發事件時,還有什麼重要的區別需要記住:jQuery以編程方式觸發事件
4
A
回答
2
每個事件都可以以編程方式觸發,只需使用它的無回調版本即可。
例子:
$('#button').click(function() { alert('event hanlder'); });
$('#button').click(); // generate the event
關於你的第二個問題,應該有本地和jQuery的事件處理程序沒有什麼區別。
有一點是整齊雖然是jQuery的結合this
到接收的事件,回調裏面的元素(這並不在本機事件處理程序發生):
$('#button').click(function() { alert(this); }); // here 'this' == document.getElementById('button');
警告: this
引用的元素不是「jQuery增強」。如果您想用jQuery善良來遍歷或修改它,您必須執行類似於var $this = $(this);
0
您可以以編程方式觸發任何事件。但大多數事件不能被模擬爲使用程序觸發器的自然事件。
//觸發一個按鈕
$("buttonSelector").trigger("click");
0
1
你應該知道jQuery中的trigger
和triggerHandler
之間的區別。
觸發
trigger
嘗試是最好的,它可以複製的自然事件。被觸發事件的事件處理程序get被執行,但默認瀏覽器操作不會總是被完全複製。例如,$('a#link).trigger('click');
將執行綁定到鏈接click
事件處理程序的JavaScript函數,但不會將瀏覽器重定向到錨點的href
,就像正常點擊一樣。 EX:
所有trigger
調用的縮寫形式與IE的行爲完全相同。 click()
,mouseup()
,keydown()
等
triggerHandler
triggerHandler
防止冒泡(EX。http://jsfiddle.net/LmqsS/),它避免了默認瀏覽器行爲,只是執行事件回調,並且它返回事件處理程序的返回值,而不是用於鏈接的jQUery對象。
你也應該知道,trigger
影響由選擇匹配的所有元素,但triggerHandler
隻影響第一個EX:http://jsfiddle.net/jvnyS/
相關問題
- 1. jQuery - 以編程方式觸發事件
- 2. 以編程方式觸發MouseLeftButtonDown事件
- 3. 以編程方式觸發ACTION_POINTER_DOWN事件
- 4. 以編程方式觸發ontouch事件
- 5. 以編程方式觸發Sitecore事件
- 6. jQuery - 檢測更改事件以編程方式觸發
- 7. 在jQuery UI對話框上以編程方式觸發事件
- 8. 如何在jQuery中以編程方式觸發事件?
- 9. 以編程方式觸發javascript/jquery事件
- 10. 以編程方式觸發SlideToggle jquery
- 11. 以編程方式嵌套控件事件觸發
- 12. 以編程方式觸發控件的事件
- 13. Swing以編程方式發送事件
- 14. 以編程方式在Linux上觸發inotify事件
- 15. 以編程方式添加的點擊事件不會觸發
- 16. 以編程方式掛鉤事件不會觸發?
- 17. 以編程方式觸發按鈕事件
- 18. 以編程方式更新散列而不觸發hashchange事件?
- 19. iPhone,如何以編程方式觸發按鈕事件
- 20. 如何以編程方式觸發mx:Button單擊事件?
- 21. 在Coldfusion中以編程方式觸發事件
- 22. 如何以編程方式在javascript中觸發dblclick事件?
- 23. 如何以編程方式觸發ASP.net頁面中的事件
- 24. 如何在JavaFX中以編程方式觸發鼠標事件?
- 25. 以編程方式選擇行時未觸發didSelectRowAtIndexPath事件
- 26. 如何以編程方式觸發Twitter意向事件?
- 27. 如何以編程方式觸發點擊事件?
- 28. 是否有可能以編程方式觸發onbeforeunload事件?
- 29. 以編程方式觸發Kendo Chart.seriesClick事件
- 30. 以編程方式在iOS SDK中觸發震動事件