在传统事件模型中:
对于事件的注册采用了 window.onclick = function(){}这种写法。 因此事件上onclick是dom节点的一个事件句柄属性它的值为一个函数,所以我们可以通过window.onclick()执行这个函数。
在DOM二级事件模型中:
我们是通过addEventListener和attachEvent进行事件绑定的,因此不能通过上面那种绑定获得事件句柄执行。我们就需要自己派发事件。
针对W3C标准:
1. 创建事件
var event = document.createEvent(eventType);
/* 可选的eventType:Events、MouseEvents、UIEvents、HTMLEvents */
2. 事件初始化
event.initEvent
event.initMouseEvent
event.initUIEvent //type参数用来指定 事件的类型 没有on和addEventListener对应
3. 派发事件
Dom.dispatchEvent(event);
针对IE事件模型:
1. 创建事件
var event = document.createEventObject();
2. 派发事件
dom.fire(eventType,event); //有on和attachEvent对应