固定菜单在IE上移动

时间:2014-06-09 15:09:32

标签: html css internet-explorer

我创建了一个固定的垂直菜单并使用以下内容修复它:

#main-menu {
  position: fixed;
  left: 0;
  top: 50px;
}

适用于Chrome和Firefox。但是在IE(11,10,9)上,当滚动页面时,菜单会移动(摇动)。

我在jsFiddle:http://jsfiddle.net/4f8WA/2/

中重现了这个问题

1 个答案:

答案 0 :(得分:1)

这是由IE浏览器的平滑滚动功能引起的,该功能为IE11的所有Windows 8用户启用。您可以通过转到Internet选项,高级和取消选中使用平滑滚动来测试它。它解决了这个问题。但是,您网站的所有用户都不会这样做。以下是解决方案。

这是一个js修复。

Fiddle

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