我正在开发一个嵌入网页的Canvas应用。我已经实现了使用鼠标滚轮进行画布缩放,但不幸的是,这也会滚动页面,因为它是文章的一部分。
有没有办法在我使用鼠标滚轮滚动DOM元素时阻止窗口滚动?!
我正在开发一个嵌入网页的Canvas应用。我已经实现了使用鼠标滚轮进行画布缩放,但不幸的是,这也会滚动页面,因为它是文章的一部分。
有没有办法在我使用鼠标滚轮滚动DOM元素时阻止窗口滚动?!
为鼠标滚轮(非Gecko)/ DOMMouseScroll(非IE)附加事件处理程序并阻止其默认操作(即滚动内容):
如果(element.addEventListener) element.addEventListener(“DOMMouseScroll”,function(event){ event.preventDefault(); },false); 否则 element.attachEvent(“mousewheel”,function(){ 返回 false; })
希望这可以帮到您!
我知道这篇文章有点旧了,但是对于那些需要搜索的人来说仍然可能有所帮助。
我已经编写了一个jQuery插件来处理此问题:$.disablescroll。
它不仅可以处理鼠标滚轮事件,还可以处理触摸移动和按键事件,这些事件通常会触发滚动。
// disable all scrolling:
$(window).disablescroll();
// enable scrolling again:
$(window).disablescroll("undo");