禁用在Internet Explorer和Google Chrome中滚动会使页面闪烁...

时间:2013-01-09 18:54:15

标签: internet-explorer scroll

我为网页制作了侧边栏菜单,从右侧滑动并将整个页面向左推。因此,为了使其与具有类似侧边栏菜单的原生移动应用程序最接近 - 我必须禁用主要内容的滚动。所以,我用这段代码做了:

/* remember the current scroll position */
self.pageScrolledTo = $(window).scrollTop();

/* and build a listener for the scroll event */
$(document).on('scroll',function (e) {
  e.stopPropagation();
  e.preventDefault();
  window.scrollTo(0, self.pageScrolledTo);
});

问题在于,在Internet Explorer和Google Chrome中 - 当我显示侧边栏并尝试滚动页面时 - 整个页面都会闪烁。这就像它滚动片刻,然后它回到相同的位置。 在Firefox上没关系 - 页面静止不动。

你能帮我解决这个问题吗? ......

最后一件事:如果我使用overflow:hidden制作html和/或body标签; - 在Internet Explorer和Firefox上,滚动条消失了,但它计算了元素与旧右边缘的正确距离......对于某些元素,滚动条仍在那里......? ......

0 个答案:

没有答案