询问用户是否应在外部窗口/选项卡中打开外部链接

时间:2014-07-31 13:32:47

标签: javascript

我在我的网站上运行以下Javascript,以在新窗口/标签中打开所有外部链接:

function linkopener(a) {
    var b = a ? "_blank" : "_self";
    var c = document.links;
    for (var i=0; i < c.length; i++) {
      if (c[i].href.search("domain.tld") == -1) c[i].target = b;
    }
}
window.onload = linkopener; 

现在我想在用户点击外部链接时向用户添加一个问题,无论她/他想要在新窗口/选项卡中打开它还是在当前窗口/选项卡中打开它。 如果她/他想要手动退出网站,则不应显示任何问题。 这是可能的,如果是的话,怎么样? 提前谢谢!

1 个答案:

答案 0 :(得分:1)

function linkopener(a) {
    var b = a ? "_blank" : "_self";
    var c = document.links;
    for (var i = 0; i < c.length; i++) {
        if (c[i].href.search("peleke.de") == -1) {
            c[i].addEventListener("click", function () {
                if (confirm("Do you want to open this in a new window/tab?")) {
                    this.target = b;
                } else {
                    this.target = '';
                }
            });
        }
    }
}
window.onload = linkopener;

DEMO