如何测试链接是外部链接还是内部链接?请注意:
- 我无法对本地域进行硬编码。
- 我无法测试“http”。我可以很容易地使用 http 绝对链接链接到我自己的网站。
- 我想使用 jQuery/javascript,而不是 css。
我怀疑答案就在 location.href 的某处,但我没有找到答案。
谢谢!
最佳答案
我知道这篇文章很旧,但它仍然显示在结果的顶部,所以我想提供另一种方法。我看到了对 anchor 元素的所有正则表达式检查,但为什么不只使用 window.location.host
并检查元素的 host
属性呢?
function link_is_external(link_element) {
return (link_element.host !== window.location.host);
}
使用 jQuery:
$('a').each(function() {
if (link_is_external(this)) {
// External
}
});
并使用纯 javascript:
var links = document.getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
if (link_is_external(links[i])) {
// External
}
}
关于javascript - 使用 jQuery/javascript 测试链接是否为外部链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2910946/