所以我创建了一个使用视差滚动的页面。视差在Chrome和Firefox上运行顺畅,但在IE上它开始出现口吃。所以我(这意味着谷歌搜索)这个脚本修复它在Edge和IE10上
if(navigator.userAgent.match(/(?:\b(MS)?IE\s+|\bTrident\/7\.0;.*\s+rv:|\bEdge\/)(\d+)/)) {
jQuery('body').on("mousewheel", function () {
// remove default behavior
event.preventDefault();
//scroll without smoothing
var wheelDelta = event.wheelDelta;
var currentScrollPosition = window.pageYOffset;
window.scrollTo(0, currentScrollPosition - wheelDelta);
});
}
但它完全打破了IE11的滚动。 它真的很奇怪,它适用于IE10和边缘但不适用于IE11。
任何人都知道可能解决这个问题的方法是什么?我想addeventlistener会有所帮助,但我没有设法正确实现它。
非常感谢帮助!!
编辑:在EDGE上,缩放也被破坏了。这是不可避免的吗?
答案 0 :(得分:1)
我有同样的问题,我用事件监听器“轮子”想出了这个,我希望它有所帮助。
$('#scroll-content').bind("wheel", function(event) {
scrollAreas[0].handleEvent(event);
});
我通过jQuery调用它
Array
(
[0] => Array
(
[id] => 1
[firstName] => "John"
[lastName] => "Doe"
[images] => "image1.jpg,image2.jpg,image3.jpg"
)
)