javascript - 被视为外部 URL 的子域
问题描述
我需要为external
所有外部超链接 URL 添加一个类。为了实现这一点,我编写了 javascript
Array.from(document.querySelectorAll('a')).forEach(a => {
a.classList.add(location.hostname === a.hostname || !a.hostname.length ? 'internal' : 'external');
});
问题是子域也被视为外部域,并且相应的<a>
标签正在external
添加类。如何从external
添加类中排除子域和其他 2 个域(abc.com 和 xyz.com)的超链接?
解决方案
而不是location.hostname === a.hostname
我会尝试location.hostname.idexOf(a.hostname) >= 0
推荐阅读
- linux - LFS v8.3 上的 gcc 8.2.0 构建失败
- python - Pandas 对日期时间的多索引
- html - 如何在ul li HTML中将文本与img对齐
- r - dplyr 汇总操作的顺序影响输出
- powershell - 如何更改脚本以按文件名而不是发件人姓名保存附件?
- android - 如何修复“react-native run-android”启动错误“重置为无效标记”
- python - 如何找到两个日期之间的中位数月份?
- r - 如何在 substr 中使用反应值?
- javascript - 如何用 html 元素替换文本以显示粗体、下划线等?
- php - 机器人在错误的频道中回复 app_mention 事件