意思就是:手动触发事件。
我的理解是:类似于jquery中的trigger方法,可以在点击某个dom的时候,触发另一个dom的事件,下面一个我自己尝试的例子:
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <title></title> 6 <style type="text/css">20 .dom { 7 width: 300px; 8 height: 300px; 9 background: red; 10 margin: 10px; 11 } 12 </style> 13 </head> 14 <body> 15 <div class="dom" id="J_dom1"></div> 16 <div class="dom" id="J_dom2"></div> 17 <script type="text/javascript"> 18 var events = new Event(‘trigger‘); 19 document.getElementById(‘J_dom2‘).addEventListener(‘trigger‘, function () { 20 console.log(2); 21 }, false); 22 document.getElementById(‘J_dom1‘).addEventListener(‘click‘, function () { 23 console.log(1); 24 document.getElementById(‘J_dom2‘).dispatchEvent(events); 25 }, false); 26 </script> 27 </body> 28 </html>
页面运行出布局为:
上面代码中可以看出,我们为dom1绑定了“click”事件,为dom2绑定了trigger事件,在dom1中的“click”触发的时候,内部程序又会用dispatchEvent触发dom2中的trigger事件,因此在点击dom1时输出结果为:
1 2
以上是我对dispatchEvent的理解,还有很多不足,请多多指出,我会继续努力修改增进!!!
时间: 2024-10-06 18:53:43