我有一个字符串 s
(一段 HTML 格式的文本)我用它把它包含在 div
中.
document.getElementById("mydiv").innerHTML = s;
s
可能包含一些 <a href="...">...</a>
链接。 如何自动添加target="_blank"
到这些链接?(这样如果用户点击它们,它就不会替换当前页面)
我正在考虑使用某种正则表达式来检测 s
中的链接,检测target=_blank是否已经存在,如果不存在则添加,但这看起来很复杂。
添加 target=_blank
会更好吗?在 s
之后在 .innerHTML = s
之后插入到 DOM 中?如果是,怎么办?
最佳答案
在使用 innerHTML
添加 anchor 后,使用 querySelectorAll()
遍历所有 anchor 。然后使用 setAttribute()
设置 target
属性,如下所示:
document.querySelectorAll("#mydiv a").forEach(function(a){
a.setAttribute('target', '_blank');
})
关于javascript - 将 target=_blank 添加到 HTML 字符串中的每个链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49447677/