javascript - 使用 pjax 时在页面加载时滚动到 div

标签 javascript jquery html scroll pjax

所以我使用 pjax,因此当用户单击链接而不是加载新页面时,它会将内容拖入。该内容的顶部有一个导航栏,下面有一个内容。单击导航栏后,它会隐藏并显示某些内容......工作正常。

我的问题。当内容被拖入时,我希望页面直接滚动到导航栏,而不是停留在页面顶部,用户需要滚动到它。我用过:

$(function() {
 $('html, body').animate({
    scrollTop: $('#in-page-nav').offset().top}, 1000);
});

滚动到页面加载的 div,当我刷新页面时它工作正常。但是当pjax将内容拉入页面时不起作用。

任何帮助我都会非常感激,谢谢!

最佳答案

您可以在 pjax:success 事件中制作动画。 pjax:success 被触发:

after replacing HTML content loaded from the server

示例

$(document).on('pjax:success', function() {
  // Your scroll animation here.
})

参见Pjax events了解更多详情。

关于javascript - 使用 pjax 时在页面加载时滚动到 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26971418/

相关文章:

javascript - Owl Carousel 2 找到中心项目

javascript - 正则表达式构建字符串直到遇到第 N 个匹配项

javascript - jquery fancybox + angularJS : fancybox button action issue

javascript - 指定 <audio> 中的 src =""是没有 .mp3 扩展名的 mp3 文件?

html - CSS 倾斜背景(不是全宽/有点不同)

javascript - 创建 DOM 元素并将其附加到另一个元素的内容

javascript - SQL 语句是否通过 PhoneGap 的 Web SQL 数据库按顺序执行?

javascript - 做完 space 后将文本框内容放在 span 或 li 上

Javascript DOM 逐渐改变不透明度

JavaScript/CSS - 按钮覆盖视频