gpt4 book ai didi

javascript - 如何禁用鼠标中键单击超链接以在新选项卡或新窗口中打开?

转载 作者:行者123 更新时间:2023-11-29 17:58:23 25 4
gpt4 key购买 nike

以下代码在 Chrome/Opera 中运行良好,但在 Firefox/IE 中无法运行。请帮助我。

$('.class name of anchor tag').mousedown(function(e){
if(e.which==2)
{
e.preventDefault();
window.location = '';
}
});

我想在超链接上禁用鼠标中键以防止在新选项卡中打开页面。代码应该在 FF/IE 中工作。我对捕获事件没有任何问题。事件触发良好。一旦用户单击中间按钮(即事件触发时),防止打开链接的代码是什么。

最佳答案

您可以将 anchor 标签 元素放在另一个元素中——它将充当“容器”; - 或者(和)在其上放​​置另一个透明元素并通过父/覆盖元素处理/捕获点击事件。

更新:

尽管上述技术是一种变通方法,但它可以节省时间,如果“适当的修复”不可用,它可能是唯一的选择。这种技术在需要对点击事件处理进行更多控制的其他地方也很有用。

如果你确实应用了这种技术,使用“覆盖”你可以检测到:

如果点击了中间按钮 -> 忽略; else -> 获取 anchor 标记的 href 值并使用如下内容进行相应导航:

overlay.onclick = function(event)
{
event = (event || window.event);

if (event.which == 2 || event.button == 4 )
{ return; }

window.location.href = this.parentNode.getElementsByTagName('a')[0].href;
};

关于javascript - 如何禁用鼠标中键单击超链接以在新选项卡或新窗口中打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37135591/

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