如何使用 jQuery 更改超链接的 href 属性
2022-08-29 22:01:00
如何使用jQuery更改超链接的属性(链接目标)?href
如何使用jQuery更改超链接的属性(链接目标)?href
用
$("a").attr("href", "http://www.google.com/")
将修改所有超链接的 href 以指向 Google。不过,您可能想要一个更精致的选择器。例如,如果您混合了链接源(超链接)和链接目标(又名“锚点”)锚点标签:
<a name="MyLinks"></a>
<a href="http://www.codeproject.com/">The CodeProject</a>
...然后,您可能不想意外地向它们添加属性。为了安全起见,我们可以指定我们的选择器将仅将标签与现有属性匹配:href
<a>
href
$("a[href]") //...
当然,你可能会想到一些更有趣的东西。如果要将锚点与特定的现有锚点匹配,则可以使用如下方法:href
$("a[href='http://www.google.com/']").attr('href', 'http://www.live.com/')
这将找到与字符串完全匹配的链接。更复杂的任务可能是匹配的,然后仅更新部分:href
http://www.google.com/
href
$("a[href^='http://stackoverflow.com']")
.each(function()
{
this.href = this.href.replace(/^http:\/\/beta\.stackoverflow\.com/,
"http://stackoverflow.com");
});
第一部分仅选择 href 以 开头的链接。然后,定义一个函数,该函数使用简单的正则表达式将 URL 的这一部分替换为新 URL。请注意这为您提供了灵活性 - 可以在此处对链接进行任何类型的修改。http://stackoverflow.com
在 jQuery 1.6 及更高版本中,您应该使用:
$("a").prop("href", "http://www.jakcms.com")
和 之间的区别在于,它抓取 HTML 属性,而抓取 DOM 属性。prop
attr
attr
prop
您可以在这篇文章中找到更多详细信息: .prop() vs .attr()