Div溢出:IE中隐藏的仍然滚动

时间:2011-05-03 15:07:55

标签: jquery ajax internet-explorer

它是一个滚动的ajaxy网站。它的工作方式(好像你无法解决)是有两个div。一个是浏览器窗口宽度的两倍,包含它的一个是浏览器窗口的宽度。容器一有溢出:隐藏,所以没有滚动条。

然而,即使在互联网资源管理器中没有水平滚动条,如果你有一个水平滚动鼠标跟踪板(我也这样做),它仍会滚动。

如何阻止此行为?

谢谢。

2 个答案:

答案 0 :(得分:1)

你可以使用position:fixed?忍受我,看起来我似乎回答了错误的问题 - 但是固定的位置可能会迫使不滚动。

但是,我觉得它会破坏你的布局,所以你必须反击它。

或许您可以左右键盘响应键盘的javascript keydown / keyup事件并阻止默认设置。

jquery中的scroll事件可能有所帮助,但是我无法阻止默认(我知道它发生在滚动之后)。 http://api.jquery.com/scroll/

答案 1 :(得分:0)

我注意到你没有DOCTYPE声明。如果没有DOCTYPE,Internet Explorer将恢复为“quirks”模式,导致许多CSS功能无法按预期工作。

我会在文档的顶部放置一个DOCTYPE declation,如下所示:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

然后,要停止水平滚动,请将 位置:固定 位置:绝对添加到 slider_currentpage div容器。

<div id="slider_currentpage" style="position: absolute; width: 1077px;">