我试图在文本中找到所有具有http或https的链接,并使用此代码将目标空白添加到它们中:
const text = this.node.body;
const regex = /https?:\/\//i;
let newStr = text.replace(regex, '$& target="_blank"');
return newStr;
但是,它不起作用,具有http或https的链接没有得到目标空白。这样做的正确方法是什么? 这是示例文本:
<p><a href='www.link.com'>Link</a></p><p><div><img src='http://image.jpg' /></div></p><p><a href='http://link.html'>link</a></p>
这是代码的结果:
<p><a href='www.link.com'>Link</a></p><p><div><img src='http:// target="_blank"/image.jpg' /></div></p><p><a href='http://link.html'>link</a></p>
答案 0 :(得分:0)
试试这个:
document.querySelectorAll('a[href^="http"]').forEach(function(e) {
e.setAttribute('target', '_blank');
});