Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单击href链接的Javascript_Javascript_Internet Explorer_Firefox_Google Chrome_Safari - Fatal编程技术网

单击href链接的Javascript

单击href链接的Javascript,javascript,internet-explorer,firefox,google-chrome,safari,Javascript,Internet Explorer,Firefox,Google Chrome,Safari,我在搜索堆栈溢出后得到了这段代码,它应该可以工作,但由于某种原因,我得到了一个错误。我正在尝试编写JS,模拟用户单击具有特定ID的特定href链接 这需要在所有主流浏览器(chrome、FF、IE、Safari)中都能使用 代码如下: HTML: 感谢您的帮助。谢谢您需要从目标[0]引用中删除[0]getElementById返回一个元素,而不是元素数组。我用铬合金做了测试,效果很好 您需要从目标[0]引用中删除[0]getElementById返回一个元素,而不是元素数组。我用铬合金做了测试,

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

这需要在所有主流浏览器(chrome、FF、IE、Safari)中都能使用

代码如下:

HTML:


感谢您的帮助。谢谢

您需要从
目标[0]
引用中删除[0]
getElementById
返回一个元素,而不是元素数组。我用铬合金做了测试,效果很好


您需要从
目标[0]
引用中删除[0]
getElementById
返回一个元素,而不是元素数组。我用铬合金做了测试,效果很好


添加错误消息是什么?是否有不能使用jquery的原因$(“#单击此处”)。单击()会处理此问题,并且还涵盖了的跨浏览器案例you@JimDeville没错,理想的做法是在这里使用一个框架来处理跨浏览器问题。@JimDeville:你确定吗?Jquery的click-only调用Jquery中设置的处理程序,它不模拟click。链接是一个完美的例子,因为您没有使用设置链接的行为jQuery@JuanMendes:如果将onclick处理程序添加到链接,它将激发。只是导航没有触发(它仍然显示您所说的内容)。奇怪的是,JQuery没有引起导航:(添加错误消息是什么?有什么原因不能使用JQuery?$(“#单击此处”)。单击()处理它,并涵盖跨浏览器的案例you@JimDeville你说得对,理想的做法是在这里使用一个框架来处理跨浏览器问题。@JimDeville:你确定吗?Jquery的click only调用在Jquery中设置的处理程序,而不是模仿click。链接是一个完美的例子,因为你没有设置墨水jQuery@JuanMendes:如果向链接添加onclick处理程序,它将触发。只是导航没有触发(它仍然显示您所说的内容)。奇怪的是,JQuery没有导致导航:(我添加了JSFIDLE。他们的框架将
X-frame-Options
设置为SAMEORIGIN,因此我将链接指向了JSFIDLE的主页。谢谢!旧代码是getelementsbyclass,我忘了更改数组。我添加了JSFIDLE。他们的框架将
X-frame-Options
设置为SAMEORIGIN,因此我将链接指向了JSFIDLE的hom。)谢谢!旧代码是getelementsbyclass,我忘了更改数组
<a id="clickhere" href="http://link.com">Need to simulate user clicking on this link</a>
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");
    }    
}