有时您在代码中写入文件的相对路径,因此在代码中href属性值可能是somefile.php
但当点击时,锚点会将您发送到http://www.yourdomain.com/somefiles.php
现在我的问题是我可以以某种方式获得锚的完整href吗?
使用$(anchor).attr("href")
时,您只能获得相对路径。
答案 0 :(得分:14)
您可以使用.prop:
$(anchor).prop("href")
这是example:
console.log($("a").prop("href")); //http://fiddle.jshell.net/_display/sth
console.log($("a").attr("href")); //sth
答案 1 :(得分:12)
element.href
将获得整个href
编辑:
我会在jQuery's website引用一些内容:
.prop()方法应该用于布尔属性/属性 以及html中不存在的属性(例如 window.location的)。所有其他属性(你可以在html中看到) 可以并且应该继续使用.attr()方法进行操作。
由于.attr()
获取在属性中键入的实际值,因为它可能使用了本机getAttribute()
,正确的方法是获取本机javascript元素,然后使用本机element.href
将获得包含域名和路径名等的href。
答案 2 :(得分:0)
你可以使用jQuery prop
函数。
用于测试在此页面的控制台中尝试以下代码;
$("a:eq(6)").prop("href")
$("a:eq(6)").attr("href")
有关详细信息,您可以搜索html属性和属性。