jQuery scrollTo 不工作的 body ,html 设置 100%

标签 jquery css hash anchor scrollto

刚刚从 SO 用户那里得到了关于这个问题的一些很棒的帮助:

jQuery on window scroll animate background image position

正如您在此处看到的,我想在用户滚动页面时逐渐滚动 div 背景图像。看到这个工作版本:

http://jsfiddle.net/nicklansdell/HFxVj/4/

给出的答案非常有效。然而,除了能够使用浏览器滚动条滚动页面外,我还想包含一些额外的功能,当单击 anchor 时,将页面滚动到 div 哈希位置。我正在使用 scrollTo 插件来实现这个效果,直到我包含以下 CSS:

body, html {
    height: 100%;
    min-height: 100%;
}

不幸的是,如果我包含这个页面 scrollTo 动画不起作用但包含它允许背景图像位置动画工作,它似乎是一个或另一个,但当然我需要两者:-)任何人都可以建议解决方法在这里?非常感谢。

编辑*

我已经缩小了我的问题范围。问题不在于 body,html 被设置为高度 100%。这取决于给#page div 一个物理高度。它要求背景图像滚动的高度为 100%,但不需要为 scrollTo 指定高度。请参阅我的 JSFiddle http://jsfiddle.net/nicklansdell/HFxVj/4/更新并尝试使用 #page 样式来了解我的意思。

最佳答案

您是否正在使用 $.scrollTo('selector-for-target-element', time); 进行滚动?对于这种语法,body 中的任何一个 HTML 都需要具有自动高度。我有类似的问题,我通过明确提及需要滚动的父 div 来解决。

$('parent-div-selector').scrollTo('selector-for-target-element', time);
instead of 
$.scrollTo('selector-for-target-element', time);

它奏效了。

希望对您有所帮助。

关于jQuery scrollTo 不工作的 body ,html 设置 100%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5065355/

相关文章:

html - 使用显示内联 block 居中 div 会导致行下方出现间距

javascript - 显示一个div,如果表数据显示 "Unpaid"与Jquery

javascript - 水平滚动新闻滚动条用 JS 或 JQuery 有什么好用的

.each 循环内的 javascript .push 方法仅返回一个数组

javascript - 从 SQLite 检索图像并在 HTML 页面上显示图像 - JavaScript

javascript - 从 DataTable 中删除一行而不刷新整个页面

C 添加哈希节点时出现段错误

采用种子的 C++ 哈希函数

hash - SHA 的 SHA 作为复合对象的签名

Javascript 在对象数据表中绘制 'X'