jQuery UI源庫包含用於模擬鼠標和鍵盤事件的jquery.simulate.js文件。測試jQuery UI的東西時,使用該模擬函數而不是使用jQuery event methods有什麼好處?jquery.simulate.js和jQuery事件方法之間的區別?
回答
jquery.simulate.js
文件僅用於模擬事件 - 它不提供像jQuery那樣的完整事件管理系統。這意味着,它會創建一個假事件對象,然後將此事件發送到DOM。這可以與jQuery的.trigger()
方法進行比較,該方法做了類似的事情。
但是,事件對象有很多屬性可以修改,包括是否應該冒泡,源元素是什麼,是否按下了任何特殊鍵,鼠標點擊的確切x和y位置, 等等。當我們調用.trigger()
時,jQuery隱藏了這個信息,只設置了一些默認值的必要屬性。另一方面,jquery.simulate.js
專爲測試(注意該文件位於「jquery-ui/tests /」下)。出於測試目的,您需要對事件對象進行更細粒度的控制,以更好地模擬真實的用戶交互。長話短說,除非你在做測試,最有可能你根本不需要jquery.simulate.js
。即使你想要它提供的一些功能,也要注意這個文件並不是jquery-ui庫的正式組成部分。
-1。這裏錯過了一個非常重要的觀點。 .trigger()只會爲鍵盤事件調用事件處理程序(如果有),並觸發實際的鍵盤事件。例如 - 如果我需要觸發退格鍵盤事件,以便元素的最後一個字符被刪除,那麼敲擊keyCode = 8的keypress/keydown/keyup事件將不起作用。使用這個jquery.simulate.js可以做到這一點.https://github.com/j-ulrich/jquery-simulate-ext已經建立在這個庫上。 – 2013-04-08 08:03:53
請使用.trigger()知道你是否能夠實現真正的按鍵。我需要執行相同的操作。 – 2013-04-08 08:06:09
- 1. 事件和方法之間的區別
- 2. OnClick()事件和OnClickListener之間的區別?
- 3. JSF:ViewActions和preRender事件之間的區別
- 4. LinkLabel.Click和LinkLabel.LinkClicked事件之間的區別?
- 5. jQuery - '。'之間的區別和「#」
- 6. getRootNav()和navCtrl()方法之間的區別
- 7. 「__method__」和「方法」之間的區別
- 8. PrintWriter.printf和PrintWriter.format方法之間的區別
- 9. EventLog.WriteEntry和EventLog.WriteEvent方法之間的區別
- 10. doGet和doHead方法之間的區別
- 11. Map.put和Map.putAll方法之間的區別?
- 12. GET和POST方法之間的區別?
- 13. $ http.get和方法之間的區別:'GET'
- 14. UIPickerView:didSelectRow方法和Value Changed事件處理程序方法之間的區別
- 15. Grails withTransaction()和事務服務方法之間的區別
- 16. OnLoad方法和Load事件的區別?
- 17. jquery-rails和jquery-ujs之間的區別
- 18. JQuery GET和Angular JS之間的區別$ http GET方法
- 19. jquery pushStack和add方法之間的區別
- 20. 「DOMContent事件」和「加載事件」之間的區別
- 21. 事務和TransactionScope之間的區別
- 22. 事件與delegateEvents之間的區別?
- 23. jQuery中的$和$()之間的區別
- 24. Java:組件中的setPreferredSize()和setSize()方法之間的區別
- 25. 在c#中創建一個事件和匿名方法之間的區別#
- 26. 類方法和實例方法之間的區別?
- 27. 下劃線js之間的區別_each方法和_.invoke方法
- 28. 跟進:類方法和實例方法之間的區別?
- 29. UdpClient.Send方法和UdpClient.Client.Send方法之間的區別
- 30. jquery ajax頭和beforesend之間的區別
Zardoz,jQuery的事件方法可能有所有基本需要的東西,但插件可能會有更先進的東西..因爲它是事件的原始事件。 – kobe 2010-12-12 18:55:54
@如果你自己做不了什麼,如果別人已經爲你做了這些,那麼你可以去...插件 – kobe 2010-12-12 19:06:49
@gov ...我沒有看到任何先進的東西在那裏。在我看來,這兩者都觸發了相同的事件。也許有人的jQuery UI團隊在這裏回答這個問題。 – Zardoz 2010-12-12 22:17:13