Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何禁用鼠标滚轮单击按钮?_Javascript_Jquery_Mousewheel - Fatal编程技术网

Javascript 如何禁用鼠标滚轮单击按钮?

Javascript 如何禁用鼠标滚轮单击按钮?,javascript,jquery,mousewheel,Javascript,Jquery,Mousewheel,我试图找到一种方法来禁用鼠标滚轮按钮的默认操作,即在新选项卡中打开链接 有可能吗?。在该事件处理程序中,调用e.preventDefault(): 请注意,并非所有浏览器都支持阻止此默认操作。对我来说,它只适用于Chrome。Firefox、Opera和IE9都不会通过鼠标中键点击来引发点击事件。它们确实会启动mouseup和mousedown。使用JAVASCRIPT禁用鼠标滚轮事件: 在IE中: document.attachEvent('onmousewheel', function(e)

我试图找到一种方法来禁用鼠标滚轮按钮的默认操作,即在新选项卡中打开链接

有可能吗?

。在该事件处理程序中,调用
e.preventDefault()


请注意,并非所有浏览器都支持阻止此默认操作。对我来说,它只适用于Chrome。Firefox、Opera和IE9都不会通过鼠标中键点击来引发点击事件。它们确实会启动mouseup和mousedown。

使用JAVASCRIPT禁用鼠标滚轮事件:

IE中:

document.attachEvent('onmousewheel', function(e){
     if (!e) var e = window.event;
     e.returnValue = false;
     e.cancelBubble = true;
     return false;
}, false);
document.addEventListener('mousewheel', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
document.attachEvent('mousewheel', function(e){
    if (!e) var e = window.event;
    e.returnValue = false;
    e.cancelBubble = true;
    return false;
}, false);
document.addEventListener('DOMMouseScroll', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
在狩猎中:

document.attachEvent('onmousewheel', function(e){
     if (!e) var e = window.event;
     e.returnValue = false;
     e.cancelBubble = true;
     return false;
}, false);
document.addEventListener('mousewheel', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
document.attachEvent('mousewheel', function(e){
    if (!e) var e = window.event;
    e.returnValue = false;
    e.cancelBubble = true;
    return false;
}, false);
document.addEventListener('DOMMouseScroll', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
在歌剧中

document.attachEvent('onmousewheel', function(e){
     if (!e) var e = window.event;
     e.returnValue = false;
     e.cancelBubble = true;
     return false;
}, false);
document.addEventListener('mousewheel', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
document.attachEvent('mousewheel', function(e){
    if (!e) var e = window.event;
    e.returnValue = false;
    e.cancelBubble = true;
    return false;
}, false);
document.addEventListener('DOMMouseScroll', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
在Firefox中:

document.attachEvent('onmousewheel', function(e){
     if (!e) var e = window.event;
     e.returnValue = false;
     e.cancelBubble = true;
     return false;
}, false);
document.addEventListener('mousewheel', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
document.attachEvent('mousewheel', function(e){
    if (!e) var e = window.event;
    e.returnValue = false;
    e.cancelBubble = true;
    return false;
}, false);
document.addEventListener('DOMMouseScroll', function(e){
    e.stopPropagation();
    e.preventDefault();
    e.cancelBubble = false;
    return false;
}, false);
这对我有用

$(document).on("mousedown", "selector", function (ev) {
    if (ev.which == 2) {
        ev.preventDefault();
        alert("middle button");
        return false;
    }
});
我的代码:

$(document).on('auxclick', 'a', function(e) {
if (e.which === 2) { //middle Click
    e.preventDefault();
    e.stopPropagation();
    e.stopImmediatePropagation();
    return false;
}
return true;

不适用于chrome,也不适用于firefox。请注意,您的代码是错误的,
“单击”
“中键/鼠标滚轮”按钮甚至不会触发。@Christoph:对不起,从建议的链接复制了它。更正了。@Esailija:我用铬合金工作。在Firefox中确实没有。@J.P.tenBerge什么操作系统<代码>“单击”在windows 7 NVM中不会触发鼠标中键/右键单击,而这只是右键单击。@Esailija:在这里也使用windows 7,在Chrome中与我一起触发鼠标中键单击。此外,我还注意到mouseup和mousedown在其他浏览器中也会被炒鱿鱼。同样,一些不尊重标准鼠标事件的人-。-“很抱歉添加了一条没有添加到封面的评论。但那真是太棒了。