1 回答

TA贡献1802条经验 获得超6个赞
url
不包含.host
属性;返回一个href
.prop()
字符串。
要访问主机名,您需要将每个 URL 转换为带有new URL()
.
请注意,您还必须更新.indexOf()
to 指向url.host.indexOf()
。
jQuery('document').ready(function() {
jQuery('a').each(function(index, element) {
var url = new URL(jQuery(element).prop('href'));
if (url.host !== window.location.host) {
if (url.host.indexOf('?') == -1) {
url += '?ref=xxx';
} else {
url += '&ref=xxx';
}
jQuery(element).prop('href', url);
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="/test.html">Internal</a>
<a href="https://www.google.com">External</a>
添加回答
举报