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

2020/10/23 02:41 · javascript ·  · 0评论

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

document.getElementById('yourLinkID').click();

此功能至少在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;
    }
}

如果您只想更改当前页面地址,则可以通过在Javascript中执行以下操作来实现:

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

就像这样:

<a id="myLink" onclick="alert('link click');">LINK 1</a>
<a id="myLink2" onclick="document.getElementById('myLink').click()">Click link 1</a>

或页面加载时:

<body onload="document.getElementById('myLink').click()">
...
<a id="myLink" onclick="alert('link click');">LINK 1</a>
...
</body>

jQuery单击链接的方式是

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

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

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

对于我来说,我设法使其发挥了作用。我在5000毫秒内部署了自动点击,然后在1000毫秒后关闭了循环。然后只有1次自动点击。

<script> var myVar = setInterval(function ({document.getElementById("test").click();}, 500)); setInterval(function () {clearInterval(myVar)}, 1000));</script>

不建议使用上述许多方法。现在建议使用在这里找到的构造函数

function clickAnchorTag() {
    var event = document.createEvent('MouseEvent');
    event = new CustomEvent('click');
    var a = document.getElementById('nameOfID');
    a.dispatchEvent(event);
}

这将导致单击锚标记,但不会显示弹出窗口阻止程序是否处于活动状态,因此用户将需要允许弹出窗口。

除了点击之外,您还可以使用Javascript转发到点击将到达的URL吗?

也许您可以在onLoad体内放置一些东西以移动到所需位置。

您可以将它们重定向到另一个页面。实际上,实际上是单击链接并访问它似乎是不必要的,但我不了解整个故事。

客户端JS功能可在...时自动单击链接

这是一个示例,您在其中检查隐藏表单输入的值,该隐藏表单输入包含从服务器传递来的错误。.您的客户端JS然后检查它的值,并在您指定的其他位置填充错误。出现弹出式登录模式。

var signUperror = document.getElementById('handleError')

if (signUperror) {
  if(signUperror.innerHTML != ""){
  var clicker = function(){
    document.getElementById('signup').click()
  }
  clicker()
  }
}

您无法使用户的鼠标执行任何操作。但是,您可以完全控制事件触发时发生的情况。

您可以做的就是点击身体负荷。W3Schools在这里有一个示例

本文地址:http://javascript.askforanswer.com/ruheyibianchengfangshidanjidaiyoujavascriptdelianjie.html
文章标签: ,   ,   ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!