如何使用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以http://stackoverflow.com
开头的链接。 然后,定义一个函数,使用一个简单的正则表达式来替换这部分URL。 注意这给你的灵活性 - 可以在这里完成对链接的任何修改。
使用jQuery 1.6或更高版本,您应该使用:
$("a").prop("href", "http://www.jakcms.com")
prop和attr之间的区别在于attr抓住了prop属性获取DOM属性的HTML属性。
你可以在这篇文章中找到更多细节:.prop()vs .attr()
在查找中使用attr
方法。 您可以切换出任何具有新值的属性。
$("a.mylink").attr("href", "http://cupcream.com");
链接地址: http://www.djcxy.com/p/12375.html