我想找到一种方法来禁用鼠标滚轮按钮的默认操作,即在新标签页中打开链接。这是否可能?
绑定一个通用的点击事件处理程序,专门检查中键单击。在该事件处理程序内,调用e.preventDefault()
:
$("#foo").on('click', function(e) {
if( e.which == 2 ) {
e.preventDefault();
}
});
这对我很有效...
$(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;
使用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);