当前位置:  开发笔记 > 编程语言 > 正文

如何以编程方式单击带有javascript的链接?

如何解决《如何以编程方式单击带有javascript的链接?》经验,为你挑选了5个好方法。

有没有办法使用JavaScript点击我页面上的链接?



1> arik..:
document.getElementById('yourLinkID').click();


实际上,到目前为止,它在我尝试的所有浏览器中都有效,包括IE,Safari,Chrome,Firefox和Opera.
请注意,如果链接具有`target =“ _ blank”`属性,则将为新窗口激活浏览器的弹出窗口阻止程序。

2> Matthew Crum..:

此功能至少适用于Firefox和Internet Explorer.它运行附加到链接的任何事件处理程序,并在事件处理程序未取消默认操作时加载链接的页面.

function clickLink(link) {
    var cancelled = false;

    if (document.createEvent) {
        var event = document.createEvent("MouseEvents");
        event.initMouseEvent("click", true, true, window,
            0, 0, 0, 0, 0,
            false, false, false, false,
            0, null);
        cancelled = !link.dispatchEvent(event);
    }
    else if (link.fireEvent) {
        cancelled = !link.fireEvent("onclick");
    }

    if (!cancelled) {
        window.location = link.href;
    }
}


马修是正确的,http://stackoverflow.com/questions/809057/how-do-i-programmatically-click-on-an-element-in-firefox有更多关于原因的信息.跨浏览器很有趣:)
它不尊重`target`属性或``
在Chrome中也能很好地运行.谢谢!

3> Fabien Ménag..:

如果您只想更改当前页面地址,只需在Javascript中执行此操作即可:

location.href = "http://www.example.com/test";


投票,因为我不喜欢回答用例而不是解决它的问题."我认为这是你的意图,我不知道你的约束,所以在概念真空中使用概念领域:使用它."
我投票了,因为我正在寻找一个很好的解决方案,点击userjs脚本中的`mailto:`链接.绝对节省了我的时间.我准备创建`a`元素并制作一些"程序化点击"http://stackoverflow.com/questions/809057/how-do-i-programmatically-click-on-an-element-in-firefox
我也试过调用在其他地方和上面提出的`click()`方法,它在IE9中不起作用,但设置`location.href`实际上是从`mailto:`链接发送了电子邮件.好方案!

4> Canavar..:

就像那样:

LINK 1
Click link 1

或在页面加载时:


...
LINK 1
...


是的,但随后必须进行一些其他单击。
您无法在任何事件(例如页面加载)上执行此操作吗?
是的,您是对的,我以为他是在点击其他链接时要求的。
感谢您的帮助,但是即时通讯使用firefox 3却无法正常工作,在错误控制台中显示错误:document.getElementById(“ myLink”)。click不是一个函数
但是点击链接就可以了,只是.click不起作用

5> Muhammad Waq..:

点击链接的jQuery方式是

$('#LinkID').click();

对于mailTo链接,您必须编写以下代码

$('#LinkID')[0].click();


这对我来说对点击"a"链接不起作用.使用`[0] .click()`版本,我认为它与`document.getElementById('yourLinkID')相同.单击();`回答.
我试过这个,并且mailTo链接在React Native中不起作用.使用此:window.location.href ="mailto:address@gmail.com";
这是行不通的。这不是他问的问题的答案。如果我还有其他观点,我对此会否定。
这行不通吗?您尝试过了吗?希望您理解“ LinkID”的含义。如果如今某人对没有jQuery的js足够落后,我真的会感到惊讶。无论如何,在获得积分后可以随意投票
推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有