我正在使用 jQuery 鼠标滚轮插件来允许浏览器将上下滚动视为左右滚动。代码很简单:
$('body').bind('mousewheel', function(event, delta) {
this.scrollLeft -= (delta * 5);
});
您可以在水平滚动页面上测试此功能:http: //jsfiddle.net/Ema2B/13/
这在 chrome 中效果很好。向下滚动可向右滚动内容窗格。如果你把它带进 Firefox,它就不起作用。我进行了一些测试,firefox 确实看到了正确的 delta 值,但由于某种原因它不理解scrollLeft 。我设置了一个简单的测试来验证这一点:
$("a.logo").on("click", function(){
$(body).scrollLeft(300);
});
同样,这在 chrome 中效果很好,但在 Firefox 中效果不佳。为什么Firefox不允许scrollLeft?
注意:Overflow:hidden 设置为 body 以禁用滚动条。在 chrome 和 firefox 中测试小提琴以查看。