我想在javascript中創建新的事件類型。假設我有一些標準,當用戶hasAquiredIceCream
,我想觸發和綁定到這個事件的基礎上的標準。我怎樣才能在JavaScript中創建新事件。我使用jQuery,所以理想情況下我可以使用它與.trigger('hasAquiredIceCream')
和.bind('hasAquiredIceCream')
。我假設一個純粹的JavaScript解決方案將與jQuery一起工作(它不需要是一個插件),可以這樣做嗎?javascript中的新事件類型
2
A
回答
3
在JavaScript對象上使用jQuery的.trigger()
,you can trigger custom events on any element或。
var obj = { id: 0, ... };
$(obj).bind('custom', function(e, arg, ...) { ... });
$(obj).trigger('custom', [arg, ...]);
或者,使用普通的JavaScript,實現observer pattern:
function EventHelper() {
this.handlers = [];
this.bind = function(fn) {
this.handlers.push(fn);
};
this.trigger = function(args) {
for (var i = 0; i < this.handlers.length; i++) {
this.handlers[i].call(this, args);
}
};
return this;
}
var event = new EventHelper();
event.bind(function() { ... });
event.trigger();
+0
真棒,謝謝 – 23890123890 2011-05-27 14:42:01
相關問題
- 1. 檢測Javascript事件類型
- 2. javascript事件模型
- 3. javascript事件更新
- 4. jquery中的事件類型條件
- 5. 從關聯表中選擇特定事件類型的最新事件日期
- 6. 類事件(類型錯誤)
- 7. wordpress事件的類型
- 8. Google Calendar API中的更新事件JavaScript
- 9. 更新Javascript中的關鍵事件
- 10. JavaScript「類」中的事件處理程序
- 11. Azure事件中心 - 同一個事件中心中的多個事件類型
- 12. TinyOS中事件的返回類型
- 13. jQuery中的onHide()類型事件
- 14. 事件中的非原始類型
- 15. 更新類的火事件
- 16. HTML的JavaScript類型=文件
- 17. JQuery的事件不能與類型被稱爲=「文/ JavaScript的」
- 18. 禁用輸入類型的Javascript「點擊」事件:Firefox中的文件
- 19. javascript創建類事件
- 20. Javascript類使用window.onunload事件
- 21. 如何中斷javascript刷新事件
- 22. AWS Lambda - CloudWatch事件類型
- 23. 更改事件類型
- 24. 檢查jQuery事件類型
- 25. 獲取onChange事件類型
- 26. 獲取命中測試事件類型
- 27. 模型改變時的javascript/backbone事件
- 28. javascript dom0事件模型的理解
- 29. 從特定設備獲取特定類型的最新事件
- 30. 新內容類型的事件接收器?
見類似的問題http://stackoverflow.com/questions/399867/custom-events-in-jquery和HTTP ://api.jquery.com/trigger/。 '.trigger()'和'.bind()'支持自定義事件。 – 2011-05-27 14:11:50
它已經像你描述的那樣工作了... – 2011-05-27 14:27:19
@felix啊,我不知道在使用它之前我不需要先定義它 – 23890123890 2011-05-27 14:55:54