Javascript 点击 href 链接

标签 javascript internet-explorer firefox google-chrome safari

我在搜索堆栈溢出后得到了这段代码,它应该可以工作,但由于某种原因我收到了错误。我正在尝试编写 JS 来模拟用户单击具有特定 ID 的特定 href 链接。

这需要在所有主要浏览器(chrome、FF、IE、Safari)中工作

这是代码:

HTML:

<a id="clickhere" href="http://link.com">Need to simulate user clicking on this link</a>

JS:

fireOnclick();
function fireOnclick() {
var target=document.getElementById("clickhere");
if(document.dispatchEvent) { // W3C
    var oEvent = document.createEvent( "MouseEvents" );
    oEvent.initMouseEvent("click", true, true,window, 1, 1, 1, 1, 1, false, false, false, false, 0, target[0]);
    target[0].dispatchEvent( oEvent );
    }
else if(document.fireEvent) { // IE
    target[0].fireEvent("onclick");
    }    
}

感谢任何帮助。谢谢

最佳答案

您需要从 target[0] 引用中删除 [0]。 getElementById 返回一个元素,而不是元素数组。我在 Chrome 中测试过,效果很好。

http://jsfiddle.net/mendesjuan/vCVbA/1/

关于Javascript 点击 href 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8918620/

相关文章:

html - 将 css 应用于 html 而不是 iframe html

javascript - 在 three.js 中向对象(白色圆圈)添加文本

javascript - 数据表和黄金布局 - 弹出窗口时未调用 .DataTable()

javascript - IE下拉菜单问题

internet-explorer - 如何在网络浏览器上触发 SSL 重新握手?

firefox - Firefox 中 Bootstrap 导航选项卡下出现意外的细线

javascript - jQuery:在一个元素上切换类,从所有其他元素中删除相同的类

javascript - 如何按整数查找数字?

javascript - 在没有库的 JavaScript 中检查 IE 小于 9 的最佳方法

css - 我需要将输入元素调整为表格单元格宽度