使用适用于 IE 的 Javascript 模拟单击​​链接 [英] Emulate clicking a link with Javascript that works with IE

查看:19
本文介绍了使用适用于 IE 的 Javascript 模拟单击​​链接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想让 java 脚本点击页面上的链接..我在网上找到了一些建议添加这样的功能的东西:

I want to have java script clicking a link on the page..I found something on the net that suggests adding a function like this:

function fireEvent(obj,evt){

    var fireOnThis = obj;
    if( document.createEvent ) {
      var evObj = document.createEvent('MouseEvents');
      evObj.initEvent( evt, true, false );
      fireOnThis.dispatchEvent(evObj);
    } else if( document.createEventObject ) {
      fireOnThis.fireEvent('on'+evt);
    }
}

然后使用:

fireEvent(document.getElementById('edit_client_link'),'click');

这对于 FF 似乎工作正常,但对于 IE 则不起作用!

This seems to work fine for FF but with IE it doesn't work!

有什么想法吗?

推荐答案

我认为你仍然需要调用 document.createEventObject —— 你只是检查了它在那里.未经测试的代码如下,但基于 docs应该工作.

I think you still need to call document.createEventObject -- you only checked that it's there. Untested code follows, but based on the docs it should work.

function fireEvent(obj,evt){

    var fireOnThis = obj;
    if( document.createEvent ) {
      var evObj = document.createEvent('MouseEvents');
      evObj.initEvent( evt, true, false );
      fireOnThis.dispatchEvent( evObj );

    } else if( document.createEventObject ) {
      var evObj = document.createEventObject();
      fireOnThis.fireEvent( 'on' + evt, evObj );
    }
}

这篇关于使用适用于 IE 的 Javascript 模拟单击​​链接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆