我正在尝试使用 jQuery 修改链接。链接是动态生成的,我无法控制现有的 HREF,因为它们是从 3rd 方站点调用的。
使用 jQuery,如何更改链接:
example.com/?one=1&two=1
对此:
example.com/?one=1&two=1&thisisadded=true
所以本质上添加&thisisadded=true
到链接的末尾?
需要更改的链接在它们自己的 div 中,其类为my-link
.
$('a.my-link').each(function () {
var href = $(this).attr('href');
$(this).attr('href', href + '&thisisadded=true');
});
如果我的不够好,则用 jQuery 选择器替换选择器,该选择器将匹配您网站上的适当链接。
var href = $(this).attr('href');
$(this).attr('href', href + '&thisisadded=true')
显然,在this
您的链接所在的上下文中执行此操作
只需使用您的选择器和回调函数即可attr
。这会将附加部分添加到每个匹配的链接:
$('a.my_link').attr('href', function(i, a){ return a + "&thisadded=true" });
为方法提供回调时attr
,第一个参数是index
,第二个参数是原始attribute
值。回调返回的任何内容都将成为新值。
注意:此功能在jQuery 1.1及更高版本中可用。不要将此方法与 jQuery 1.4 中引入的接受回调的新批次方法混淆。