拿浏览器的click事件来说:

在IE浏览器中如果一个element没有注册click事件,那么直接调用的话会出现异常!当然如果你注册了没有什么可说的。

那么如果使用fireEvent来处理,click事件注册了则直接触发注册的事件;即使没注册事件不会报错,如同用户点击了鼠标的左键的真实行为。

那么在webkit内核的浏览器中,我们需要使用dispatchEvent来替代fireEvent来触发事件。兼容代码如下:

  var t = document.getElementById('button')
            if (document.all) {
                t.fireEvent("onclick");
            }
            else {
                var evt = document.createEvent('HTMLEvents');
                evt.initEvent('click', true, true);
                t.dispatchEvent(evt);
            }

 

相关文章:

  • 2021-05-26
  • 2022-12-23
  • 2022-12-23
  • 2021-10-21
  • 2022-12-23
  • 2021-05-21
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-06-03
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案