如何基於名稱(例如click
)測試事件是否爲瀏覽器事件(例如click
,load
,blur
等)? (和沒有我不使用jQuery/mootools的/樣機/道場)如何檢測事件是否爲瀏覽器事件
UPDATE:
在這個函數中附上瀏覽器事件(click
和load
)例如:
observe: function(elements, eventName, callback) {
if (!(elements.length != null)) {
elements = [elements];
}
return this.each(elements, function(e) {
if (helper.hooks.eventObserved != null) {
helper.hooks.eventObserved(eventName, callback, e);
}
if (typeof e === 'string') {
e = this.el(e);
}
if (e.addEventListener) {
return e.addEventListener(eventName, callback, false);
} else if (e.attachEvent) {
return e.attachEvent("on" + eventName, callback);
}
});
},
這觸發事件:
fire: function(elements, eventName) {
if (!(elements.length != null)) {
elements = [elements];
}
return this.each(elements, function(e) {
var evt;
if (document.createEventObject != null) {
evt = document.createEventObject();
return e.fireEvent("on" + eventName);
} else {
evt = document.createEvent('HTMLEvents');
evt.initEvent(eventName, true, true);
return !e.dispatchEvent(evt);
}
});
},
但我想要測試的事件是否存在,例如click
是瀏覽器事件,但login
不是那麼我該如何測試?
如果你不使用jQuery/mootools的/樣機/道場,那麼哪來的事件來自何處,如果他們不「瀏覽器事件」? – Pointy 2011-04-17 21:04:11
(注意,我拒絕猜測你是一個Qooxdoo用戶的誘惑) – Pointy 2011-04-17 21:04:28
我在寫我自己的小型JS庫 – errorhandler 2011-04-17 21:05:10