如何使用jquery在Firefox和IE 7上禁用鼠标中键滚动:
以下功能无法在这些浏览器上运行:
$('body').mousedown(function(e)
{
if((e.button === 1) || (e.button === 2))
{
e.preventDefault();
e.preventScrolling();
return false;
}
});
答案 0 :(得分:0)
(答案复制自:Disabling middle click scrolling with javascript)
$("body").wrap(
"<a href='javascript:void(0);'
onclick='return false;'></a>"
);
通过将其包装在链接中(通过jquery wrap),浏览器认为它是一个链接,即使您拖动鼠标,也不要在中间点击滚动。通过这种设置和我的情况,有一些(次要的)陷阱。
Firefox会在您单击中键时打开一个新选项卡,但前提是您不拖动。当您单击中间,拖动或不拖动时,Opera将打开一个新选项卡。这就是为什么我用href ='javascript:void(0);'而不仅仅是href ='#' - 这样客户端的浏览器就不会加载整个页面,只是一个带有奇怪网址的空白页面。
但是这个解决方案就像Chrome和Safari上的魅力一样。它适用于IE8,除了现在当我左键单击并拖动时,它将指针更改为“无法执行该操作”符号,因为它认为我想将链接拖到某处。在较旧版本的IE上未经测试。