超时时单击动态标签时出现问题

Trouble clicking dynamic a tag on timeout

本文关键字:问题 动态 单击 超时 标签      更新时间:2023-09-26

我有以下问题,看起来很简单,但我不知道出了什么问题。

我想做的是:

当我单击一个链接(例如:mysite.com/blog/blog-article.html)时,该链接的href将保存到一个变量中。在javascript中,它被阻止并指向另一个url(主要类别–mysite.com/blog)。所有页面都是动态加载的。

在这个mysite.com/blog中,有一个没有href的元素。我将把被阻止的url(保存在变量中)提供给a元素。

$('#go-to-next').attr('href',goToUrl);

这很好用,但过了一段时间后,我想点击它。

setTimeout(function(){
        $('#go-to-next').click();
    },500);

但这不起作用。有人知道问题出在哪里吗?当我把超时脚本放在firebug中时,它仍然有效。所以它必须用.on()做一些事情,但足够简单,我可以毫无问题地更改href。

尝试:

setTimeout(function(){
        window.location.href = $('#go-to-next').attr('href');
    },500);

在锚点上调用.click()不会运行跟随链接的默认操作,因此如果这是您想要的,则必须显式地进行编码。