Skip to content

Instantly share code, notes, and snippets.

@zhangwc
Created November 27, 2013 10:24
Show Gist options
  • Select an option

  • Save zhangwc/7673571 to your computer and use it in GitHub Desktop.

Select an option

Save zhangwc/7673571 to your computer and use it in GitHub Desktop.
http://www.css88.com/archives/4998 (IE和其他浏览器自定义事件触发器)
document.addEventListener("onmyevent", function(event){
alert(event.eventType);
}, false);
var obj = document.getElementById("obj");
var event = document.createEvent('HTMLEvents');
event.initEvent("onmyevent", true, true);
event.eventType = 'message';
document.dispatchEvent(event);
===================================================
简单封装下
var events = [];
bindEvent("ddsdjfi", function(e){console.log("dddsjfi");});
bindEvent("xxx", function(e) {
console.log("xxx");
});
fire("ddsdjfi");
fire("xxx");
function bindEvent(eventName, func) {
var event = document.createEvent('HTMLEvents');
event.initEvent(eventName, true, true);
events.push({name:eventName, event:event});
document.addEventListener(eventName, func, false);
}
function fire(eventName) {
for (var i = 0; i <events.length; i++) {
if(events[i].name == eventName)
obj.dispatchEvent(events[i].event);
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment