我已经搜索了很多但仍无法找到正确的答案。
我想知道为什么中间点击(滚动按钮)只能在Firefox上加载onclick function
,而在Chrome上它可以正常工作。因此,onclick function
代替href link
显示javascript:void(0)
<a href="javascript:void(0);" onclick="open_tab();">
的Javascript
function open_tab(){
my_tab=window.open('http://www.google.com/', my_tab);
}
告诉我为什么。非常感谢。
答案 0 :(得分:1)
我没有在此计算机上进行中间点击以对此进行测试,但为了使您的中间点击与浏览器兼容,我会在javascript中添加一个事件监听器:
var open = document.getElementById('opentab');
open.addEventListener ("click", function (e) {
if (e.which === 2) {
e.preventDefault();
open_tab();
}
});
这取决于为您的链接添加ID,如:
<a href="javascript:void(0);" id="opentab">Open Tab</a>
此外,正是espascarello正确指出,mozilla社区放弃了对中间和右侧点击事件的解雇:http://bugzilla.mozilla.org/show_bug.cgi?id=180078
答案 1 :(得分:0)
为所有浏览器实现此目的
我做得有点简单
function open_tab(){
my_tab=window.open('http://www.google.com/', "Google");
}
var link = document.getElementById("alink");
link.addEventListener("mousedown", function(e) {
e.preventDefault();
if(e.which===1||e.which===2){
open_tab();
}
});
<a id="alink">Open Google</a>
该行
if(e.which===1||e.which===2){
确保仅在鼠标左键和中键单击时打开窗口。
它对我来说很好!!!!!!!!希望它有所帮助!