【问题标题】:scroll to element when page is loaded get wrong element sometimes加载页面时滚动到元素有时会出现错误的元素
【发布时间】:2018-04-02 16:31:10
【问题描述】:

我有一个页面,其中有许多带有描述和图像的帖子循环。

然后我用这个函数滚动到元素

   $('html, body').animate({
         scrollTop: $(".entry" + vm.note).offset().top + 200
               }, 1000);

问题是有时我滚动到 go 元素,有时没有。 我不知道为什么。

PS:我使用 angularJS

【问题讨论】:

  • 你试过用 ID 滚动吗?

标签: javascript jquery angularjs scroll scrollview


【解决方案1】:

可能是 DOM 仍在渲染,它无法计算从 body/html 到要滚动的元素(“.entry”+vm.note)的确切顶部距离。

您可能会尝试在执行代码之前使用超时设置延迟。

setTimeout(function(){
    $('html, body').animate({
         scrollTop: $(".entry" + vm.note).offset().top + 200
               }, 1000);
}, 3000); //set it longer if it's still not scrolling

【讨论】:

    猜你喜欢
    • 2018-03-04
    • 1970-01-01
    • 1970-01-01
    • 2022-12-01
    • 2020-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-13
    相关资源
    最近更新 更多