javascript - 如何在 IE11 中禁用平滑滚动

标签 javascript css internet-explorer

IE 的平滑滚动导致我的应用行为异常(滚动事件触发时有一个小的延迟)。

有没有办法使用 CSS 或 Javascript 在 IE11 中完全禁用平滑滚动?

最佳答案

IE 的平滑滚动功能已为 IE11 的所有 Windows 8 用户打开。

您可以通过转到 Internet 选项、高级并取消选中使用平滑滚动来禁用它。它解决了这个问题。但是您网站的所有用户都不会这样做。所以我强烈建议你不要禁用它。尝试在您的用户将使用的相同机器/浏览器上进行开发。否则,您将与您网站的用户产生不一致。出于同样的原因,我还建议永远不要更改默认浏览器设置。

这是一个 JS 修复。

fiddle

if(navigator.userAgent.match(/Trident\/7\./)) {
    $('body').on("mousewheel", function (event) {
        event.preventDefault();
        var wd = event.wheelDelta;
        var csp = window.pageYOffset;
        window.scrollTo(0, csp - wd);
    });
}

关于javascript - 如何在 IE11 中禁用平滑滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29416448/

相关文章:

javascript - 在 WooCommerce 的 jQuery 日期选择器问题中禁用工作日和假期

html - CSS3 高度 :100% and flexible boxes creating unexpected behaviour

jquery - jvectormap 标记标签放置在鼠标 IE 上方

IE 上的 CSS 兼容性。盒子阴影

javascript - IE 7 条件与 javascript

javascript - 如何使用 tweenJS 使位图移动到某些点

javascript - Alexa Node js Lambda 函数给出响应 null

javascript - 正则表达式不应以数字开头

html - 如何在css后台设置z-index

javascript - 如何使用 JavaScript/css 更改 html div 样式 z-index 值