创建鼠标事件时需要创建的事件对象需要提供指定的信息(鼠标位置信息),我们这里提
供以下参数:
1 var type = 'click'; //要触发的事件类型
2 var bubbles = true; //事件是否可以冒泡
3 var cancelable = true; //事件是否可以阻止浏览器默认事件
4 var view = document.defaultView; //与事件关联的视图,该属性默认即
可,不管
5 var detail = 0;
6 var screenX = 0;
7 var screenY = 0;
8 var clientX = 0;
9 var clientY = 0;
10 var ctrlKey = false; //是否按下 ctrl
11 var altKey = false; //是否按下 alt
12 var shiftKey = false;
13 var metaKey = false;
14 var button = 0;//表示按下哪一个鼠标键
15 var relatedTarget = 0; //模拟 mousemove 或者 out 时候用到,与事件相
关的对象
16
17 var event = document.createEvent('MouseEvents');
18 event.initMouseEvent(type, bubbles, cancelable, view, detail,
screenX, screenY, clientX, clientY,
19 ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget);
如此,我们就自己创建了一个 event 对象,然后可以传给我们自己创建的事件,这个知识
点,我们下面再说
PS:值得注意的是,我们自己创建的 event 对象可以有一点不一样的东西,比如我们的
事件对象可能多了一个这种属性:
event.flag = '叶小钗'
事件模拟
事件模拟是 javascript 事件机制中相当有用的功能,理解事件模拟与善用事件模拟是判别
一个前端的重要依据,所以各位一定要深入理解(我理解较水)