1、构造:
//非IE浏览器事件构造方法
var event = document.createEvent('HTMLEvents');//'HTMLEvents'自定义事件名
//IE浏览器构造方法
var event = document.creatEventObject();
2、事件初始化
event.initEvent("oneating", true, true);
3个参数:事件类型,是否冒泡,是否阻止浏览器的默认行为
3、属性自己定义
event.mingzi = 'hello,我是李小贱';
event.message = '我今天24岁';
4、绑定事件
document.addEventListener('oneating', function (event) {
alert(event.mingzi+','+event.message);
});
5、触发事件
document.getElementById('a').dispatchEvent(event);(非IE主流浏览器触发方法)
document.getElementById('a').fireEvent('on'+event,evt);(IE浏览器触发方法)
例子:
var events = 'touchstart touchend mousedown mouseup click'.split(' ');
var n = 0;
// 开启定时器,每两秒钟为a标签触发相应事件
var timer = setInterval(function(){
var event = new Event(events[n]);
document.getElementById('a').dispatchEvent(event); // 触发事件。
console.log(event.type);
n++;
if (n == events.length) {
clearInterval(timer);
}
},2000);