gpt4 book ai didi

html - 如何仅定位 HTML 中的传出链接

转载 作者:可可西里 更新时间:2023-11-01 12:50:33 25 4
gpt4 key购买 nike

我想用一些简单的 <header> 强制我网站上的所有传出链接在新选项卡中打开代码。我知道您可以使用 <header> 中的此代码强制所有 链接在新选项卡中打开标签:

<base target='_blank' />

但我只想定位传出链接(这样指向我网站上另一个页面的链接将不会在新选项卡中打开)。无论如何要这样做?我觉得必须...

最佳答案

我在自己的网站上使用 Javascript 完成了这项工作。我发现在页面加载时解析我的所有链接并以编程方式添加 _blank 目标比手动将属性添加到链接更容易。 (奖励:篡改 JS 中的 target 属性可以让您的代码 validate )

我在我的网站上使用了 JQuery,但逻辑非常简单:

$(document).ready(function()
{
parseLinks();
});

function parseLinks()
{
// Manage external links
$("a").each(function()
{
if ($(this).attr("href").indexOf("://") >= 0)
{
$(this).attr("target", "_blank");
}
});
}

如果你不想使用 JQuery:

window.onload = function()
{
parseLinks();
};

function parseLinks()
{
// Manage external links
var Links = document.getElementsByTagName("a");
for (var i = 0; i < Links.length; i++)
{
if (Links[i].href.indexOf("://") >= 0)
{
Links[i].target = "_blank";
}
}
}

我把它放在一个函数中,这样您就可以在需要重新运行代码(AJAX 调用、用户交互后等)时调用 parseLinks

关于html - 如何仅定位 HTML 中的传出链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15858317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com