如何禁用/删除浏览器右键单击菜单中的“在新选项卡中打开链接”选项? 如果使用 javascript 等无法做到这一点,那么有没有办法修改用户单击此链接时发生的情况,例如,显示警报或阻止选项卡加载..?
最佳答案
在新选项卡/窗口中打开链接的能力是许多浏览器的 native 功能。如果您不希望允许此类事件,则需要通知浏览器您的链接不是真正的链接。最简单的方法是从 a
元素中删除 href
属性。
HTML:
<a href="http://google.com">Can be opened in new tab/window</a>
<a>Cannot be opened in new tab/window</a>
现在浏览器在看到链接时可能会默认为您做一些其他事情。如果您还没有定义 a
元素的任何样式,您的新奇特伪链接很可能不会显示链接字体颜色、指针和下划线。您可以继续轻松地做到这一点。
CSS:
a {
color: blue;
cursor: pointer;
text-decoration: underline;
}
这有望回答您如何禁用/删除浏览器右键单击菜单中的“在新选项卡中打开链接”选项的问题。对于一些额外的信用,尽管我假设您可能希望链接在单击时仍然像常规链接一样运行。随意使用一些 JavaScript 来实现它。下面是一个使用 jQuery 的示例:
JavaScript:
$("body").on("click", "a[data-href]", function() {
var href = $(this).data("href");
if (href) {
location.href = href;
}
});
修改后的 Html:
<a href="http://google.com">Can be opened in new tab/window</a>
<a data-href="http://google.com">Cannot be opened in new tab/window</a>
修改后的 CSS:
a[href], a[data-href] {
color: blue;
cursor: pointer;
text-decoration: underline;
}
希望这对您有所帮助!
关于javascript - 如何禁用浏览器中的 'Open Link in New Tab'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7006178/