如何使用 px 的变量滚动顶部



由于我使用 ajax 在容器内加载内容,我首先检查正文是否有类,如果没有添加它,如果它有,我希望窗口滚动到新添加的内容。我希望它滚动的距离必须是我在开始时使用全局变量设置的容器的高度。计时器只是为了确保在设置变量之前完全加载所有内容。185 是我需要的额外 px,因为标题具有该高度。

它正在工作,但它没有以确切的MISURE滚动

第一次 html 加载

<div class="loadedList"> --- First time we save its height+header height in a globalVar pos
   <div class="ajax-wrapper">
      <div class="item></div>
      <div class="item></div>
      <div class="item></div>
   </div>
</div>

加载新内容时的第二个 html

<div class="loadedList">
   <div class="ajax-wrapper">
      <div class="item></div>
      <div class="item></div>
      <div class="item></div>
   </div>
   <div class="ajax-wrapper"> -- Scroll to this very top which should be pos variable
      <div class="item></div>
      <div class="item></div>
      <div class="item></div>
   </div>
</div>
if (!jQuery("body").hasClass("loadedList")) {
    setTimeout(function(){
        jQuery("body").addClass("loadedList");
        pos = jQuery("#list").outerHeight() + 185;
    }, 2000);
}
else {
    $("body, html").animate({
        scrollTop: pos
    }, 1000).offset().top;
}

这就是它工作的原因

        if(!jQuery("body").hasClass("loadedList")) {
                jQuery("body").addClass("loadedList");
        } else {
        var pos = jQuery("#list").height();
        $("body, html").animate({scrollTop: pos}, 1000).offset().top;
    }

最新更新