jquery - 滚动到页面 jquery 上的元素 - html,body 拒绝滚动

标签 jquery html5boilerplate

我无法理解这个问题,所以我必须问。我正在尝试在单击事件上执行一个非常简单的 jQ 滚动到元素。我之前已经在不同的页面上成功构建了相同的功能。

$('li.newsmenu a').click(function() {
    $('html, body').animate({scrollTop: $('section#news').offset().top});
        return false;
});

我的选择器都很好。

我已经测试了点击事件,它会给我一个警报('像这样');

在控制台中,$('section#news').offset().top 值返回合理的 717

我在 Chrome 和 Safari 中进行了测试,但没有成功。

我正在别人的工作和 HTML5 样板 Wordpress 主题系统之上工作,我想知道其中是否有什么东西。

有人有什么想法吗?这让我发疯。

最佳答案

好吧,这看起来像是一个 webkit 问题。通过指定

html, body { height: 100%; } 

它将它们的“高度”限制为窗口的高度。所以 scrollTop(x) 永远不会起作用。如果您修改 CSS 不包含这些声明,一切都会恢复正常。另一种解决方法是将您的正文内容放在可滚动的 div 中,然后滚动它。我想说这是一个 webkit 错误,因为行为看起来很奇怪。您可以通过将窗口向下滚动一点来亲自查看。然后查询所有内容的当前scrollTop值,它始终为零! body、html、document、window、div#top 等

关于jquery - 滚动到页面 jquery 上的元素 - html,body 拒绝滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9022924/

相关文章:

javascript - jquery javascript 在添加之前将值设置为 float

javascript - "@"在 jquery ajax 数据中视为非法字符

mobile - 移动网站的轻量级样板替代品

javascript - 如何在 ES6 中调用 bootstrap 的 jQuery 插件

jquery - 如何在 PlatonScript 字符串中放置双引号

javascript - 如何使用 jquery 中变量的值手动设置 href

css - 如何使用 html5-boilerplate 创建一个仅限桌面的网站?

css - 更改 HTML 5 Boilerplate 默认字体大小是否安全?

flash - crossdomain.xml 中最严格的策略是否相当于根本没有?

jquery - 聚焦文本区域