不要被标题蒙蔽了,今天的重点不是论述事件触发器,而是说一下dispatchEvent这个东西。好了,先简单做个铺垫,dispatchEvent是作为高级浏览器(如chrome、Firfox等)的事件触发器来使用的,那么什么是事件触发器?就是触发事件的东西。可能有人觉得有点莫名其妙,触发事件不是在交互中被触发的吗?的确,通常情况下,事件的触发都是由用户的行为如点击、刷新等操作实现,但是,其实有的情况下,事件的触发必须又程序来实现,比如ajax框架的一些自定义事件。正如事件的绑定一样,对于浏览器而言,绑定事件分为高级浏览器和IE浏览器两派,事件触发器也是分为高级浏览器和IE两派,而dispatchEvent正是用于高级浏览器的事件触发。下面看我整理的一个触发事件的例子:
//document上绑定自定义事件oneating
document.addEventListener('oneating',function(event) {
alert(event.mingzi+','+event.message);
},false);//创建event的对象实例。
varevent=document.createEvent('HTMLEvents');//3个参数:事件类型,是否冒泡,是否阻止浏览器的默认行为
event.initEvent("oneating",true,true);/*属性,随便自己定义*/event.mingzi= 'hello,我是李小贱';
event.message= '我今天24岁';//触发自定义事件oneating
document.dispatchEvent(event);