1. div{
2. width: 300px;
3. height: 50px;
4. background-color: red;
5. color: white;
6. }
1. <body>
2. <div>
3. 这个DIV可以点击 <br>
4. 点击键盘时会虚拟一个鼠标点击事件
5. </div>
6. <script>
7. var div =document.querySelector('div')
8. window.onkeypress =function(e){
9. var mouseEvent =document.createEvent('MouseEvent')
10. mouseEvent.initMouseEvent('click',true,true,document.defaultView,1,2,3,4,5,6,7,8)
11. // document.defaultView 属性可以获取指定文档所在窗口
12.
13. // var mouseEvent = new MouseEvent('click11',{
14. // bubbles:true,
15. // cancelable:true,
16. // ctrlKey:true,
17. // button:1,
18. // buttons:1,
19. // clientX:12,
20. // clientY:13,
21. // offsetX:12,
22. // offsetY:14,
23.
24. // })
25. div.dispatchEvent(mouseEvent)
26. }
27. div.addEventListener('click',function(e){
28. alert('你点击了DIV:' + e.pageX)
29. alert(e.ctrlKey?'ctrl被按下':'ctrl没有被按下')
30. })
31.
32. // 可以模拟任意事件 通过模拟事件可以欺骗代码
33. // 让代码认为真的发生了一个事件
34. // 模拟事件的方法:
35. // 1 创建相应的事件 如鼠标事件的mouseEvent
36. // 2 初始化事件 可以虚拟各种数据(参考MDN文档)
37. // 3 使用dispatchEvent派发事件给指定元素
38. </script>
39. </body>