启用/禁用DOMMouseScroll鼠标滚轮

时间:2016-04-06 10:29:24

标签: javascript jquery html mouseevent mouselistener

我试图在最后一个项目部分和#main(last)元素之间获得与http://www.hugeinc.com上相同的滚动转换。

这是我到目前为止所做的事情: http://codepen.io/lorenzwoehr/pen/bpYzYB

此功能滚动到下一部分:

$("body").addClass("shifted", setTimeout(function() { 
    $("body").css({"overflow":"auto"});
}, 600));

问题

这可以防止#main元素上的“正常”滚动:

$(window).on({
    'DOMMouseScroll mousewheel': elementScroll
});

当#main元素被“移位”时,如何启用滚动?

1 个答案:

答案 0 :(得分:0)

您在第40行的false函数中返回elementScroll。 因此它不会滚动。你需要返回true才能滚动。

作为解决方案,您可能想要检查滚动事件中的目标元素。例如这样: return e.target.id != 'project-2'; 然后只有当你的目标元素不是id为project-2的元素时,它才会传播滚动事件。

查看已修改的codepen