【发布时间】:2023-03-04 05:20:01
【问题描述】:
我正在内部构建一个网站,并且该页面在<head> 中设置了一个canonical URL,用于在外部指定页面的URL。
有没有什么方法可以使用 JavaScript 来获取规范的 URL?
【问题讨论】:
-
尊敬的先生,请提供一个 HTML 示例,以便我们更好地帮助您。
标签: javascript url
我正在内部构建一个网站,并且该页面在<head> 中设置了一个canonical URL,用于在外部指定页面的URL。
有没有什么方法可以使用 JavaScript 来获取规范的 URL?
【问题讨论】:
标签: javascript url
现在你可以简单地使用:
document.querySelector("link[rel='canonical']").getAttribute("href");
以上答案将为您提供 href 属性的真实值。因此,如果您没有完整的 URL,它将显示像 /query.html 这样的 href。
但.href 方法将始终为您提供带有http://example.com/query.html 等域的完整 URL:
document.querySelector("link[rel='canonical']").href;
【讨论】:
.href 方法的不同之处。
jquery 版本;
$("link[rel='canonical']").attr("href")
【讨论】:
这样的?
<!DOCTYPE html>
<html>
<head>
<link href="http://www.example.com/" rel="canonical" />
<title>Canonical</title>
<script type="text/javascript">
window.onload = function () {
var canonical = "";
var links = document.getElementsByTagName("link");
for (var i = 0; i < links.length; i ++) {
if (links[i].getAttribute("rel") === "canonical") {
canonical = links[i].getAttribute("href")
}
}
alert(canonical);
};
</script>
</head>
<body>
<h1>Canonical</h1>
</body>
</html>
【讨论】: