我正在开发嵌入在页面中的画布应用程序。我有它,因此您可以使用鼠标滚轮放大绘图,但不幸的是,它会滚动页面,因为它是文章的一部分。
当我在 dom 元素上滚动鼠标滚轮时,是否可以防止鼠标滚轮在窗口上滚动?!
我正在开发嵌入在页面中的画布应用程序。我有它,因此您可以使用鼠标滚轮放大绘图,但不幸的是,它会滚动页面,因为它是文章的一部分。
当我在 dom 元素上滚动鼠标滚轮时,是否可以防止鼠标滚轮在窗口上滚动?!
为 mousewheel (Not Gecko) / DOMMouseScroll (Not IE) 附加事件处理程序并阻止其默认操作(即滚动内容):
如果(元素.addEventListener) element.addEventListener("DOMMouseScroll", function(event) { event.preventDefault(); }, 错误的); 别的 element.attachEvent("鼠标滚轮", function() { 返回假; })
希望这可以帮助!
我知道这是旧的,但这可能对谷歌人仍然有帮助。
我编写了一个 jQuery 插件来处理这个问题:$.disablescroll。
它不仅处理鼠标滚轮,还处理通常会触发滚动的 touchmove 和 keypress 事件。
// disable all scrolling:
$(window).disablescroll();
// enable scrolling again:
$(window).disablescroll("undo");