我有一个模板,当用户使用鼠标滚轮时,模板会水平滚动。
但它只适用于chrome。
有没有办法在firefox和IE中水平滚动?
这是一个演示:http://jsfiddle.net/VhERd/
和jquery:
<script>
$(function() {
$("body").mousewheel(function(event, delta) {
this.scrollLeft -= (delta * 30);
event.preventDefault();
});
});
</script>
<script src="http://css-tricks.com/examples/HorzScrolling/jquery.mousewheel.js"></script>
最后为我的英语sry;)
答案 0 :(得分:2)
它需要解决Firefox的html
元素,而不是body
元素。
$("body, html").mousewheel....
答案 1 :(得分:1)
我已经使用过这个功能,它有点笨拙,但能完成这项任务。
function scrollPage (e) {
var delta = e.deltaX || e.wheelDelta,
dir = (delta > 0) ? -90 : 90;
if (window.addEventListener && !(window.chrome || window.opera)) {
dir *= -1;
}
window.scrollBy(dir, 0);
e.returnValue = false;
if (e.preventDefault) {
e.preventDefault();
}
return false;
}
并附上活动:
if (window.addEventListener && (!window.chrome && !window.opera)) {
window.addEventListener('wheel', scrollPage, false); // IE9+, FF
} else if (window.chrome || window.opera) {
window.addEventListener('mousewheel', scrollPage, false); // Chrome & Opera
} else {
document.attachEvent('onmousewheel', scrollPage); // IE8-
}