gpt4 book ai didi

javascript - jQuery:动态更改所有 href 值

转载 作者:行者123 更新时间:2023-12-02 22:56:22 28 4
gpt4 key购买 nike

我一直在寻找这样的问题,但没有人回答我的问题。

请原谅我,因为我有时缺乏解释自己的能力。

我在 sub1.domain.com 中有一个页面,其中所有链接的格式为

<a href="/link?param=whatever">

我正在使用 jQuery 将/link 部分之前的基本域更改为 sub2.domain.com ,该部分与页面上所有 href 的主机不同。我在研究这个问题时发现了这个片段。这是代码:

$('a').each(function() {
$(this).attr("href", function(index, old) {
return old.replace("/link", "https://sub2.domain1.com/link");
});
});

它的工作原理就像静态链接的魅力,但问题是该页面是一个搜索结果页面,即使在页面加载后也会动态加载新结果。

如何使其动态化,以便该脚本自动修改搜索加载的所有链接?换句话说,如何将此脚本应用于页面加载且新结果出现后出现的链接?

base href 在这种情况下不起作用,因为它会以某种方式破坏整个页面。

谢谢。

最佳答案

您实际上可以将此事件绑定(bind)到单击。因此,当单击链接时,它将运行此函数并更改链接。然后,只要绑定(bind)到父级或文档,这也会更改任何新链接,例如下面的

$(document).on('click', 'a', function(e){
e.preventDefault();

var link = $(this).attr( 'href' );
link = link.replace("/link", "https://sub2.domain1.com/link");
window.location.href = link;
});

关于javascript - jQuery:动态更改所有 href 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57960576/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com