一些简单的事件驱动代码。无论出于何种原因,我似乎都无法将“onchange”作为参数传递给 fireEvent()。在 ie 7/8 中给我一个无效的参数错误。这个项目需要是原生的。一点帮助?
自定义事件创建:
createCustomEvent : function(eventName) {
var evt;
if(document.createEvent) {
evt = document.createEvent('CustomEvent');
evt.initEvent(eventName, true, true);
}else if(document.createEventObject) {
evt = document.createEventObject();
evt.eventName = eventName;
}
return evt;
},
dispatchCustomEvent : function (el, evt) {
if(el.dispatchEvent) {
el.dispatchEvent(evt);
}else if(el.fireEvent) {
console.log('on'+evt.eventName); //onchange
el.fireEvent('on'+evt.eventName, evt);
}
}
用法:
dispatchCustomEvent(element, createCustomEvent('change'));