Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 切换后ScrollTop不工作_Jquery_Scrolltop - Fatal编程技术网

Jquery 切换后ScrollTop不工作

Jquery 切换后ScrollTop不工作,jquery,scrolltop,Jquery,Scrolltop,无法理解,为什么它不滚动到元素 <div class="h3 showhide">...</div> <div id="comments" class="inv" style="display:none;">...</div> <script type="text/javascript"> $(document).ready(function () { $('.main-content').on('click',

无法理解,为什么它不滚动到元素

<div class="h3 showhide">...</div>
<div id="comments" class="inv" style="display:none;">...</div>
<script type="text/javascript">
    $(document).ready(function () {
        $('.main-content').on('click', '.showhide', function () {
            $(".inv").toggle("slow");
            $('html, body').stop(true, true).animate({
                scrollTop: $('#comments').offset().top
            }, 500);
            return false;
        });
    });
</script>
。。。
...
$(文档).ready(函数(){
$('.main content')。在('click','.showhide',函数(){
$(“.inv”)。切换(“慢”);
$('html,body')。停止(true,true)。设置动画({
scrollTop:$(“#注释”).offset().top
}, 500);
返回false;
});
});

显示:无表示元素在页面中没有位置。因此,滚动不滚动

参考:

您需要显示
#注释
以获取
.offset()。使用
.show()
将其置于顶部
,然后使用
.hide()
将其隐藏

请参见此示例:

<script type="text/javascript">
  $(document).ready(function() {
    var comments_top = $('#comments').show().offset().top;


    $('.main-content').on('click', '.showhide', function() {
      if ($('#comments').is(":hidden")) {
      comments_top = $('#comments').show().offset().top;
      $('#comments').hide();
    }
      $(".inv").toggle("slow");
      $('html, body').stop(true, true).animate({
        scrollTop: comments_top
      }, 500);
      return false;
    });
  });
</script>

$(文档).ready(函数(){
var comments_top=$('#comments').show().offset().top;
$('.main content')。在('单击','.showhide',函数()上{
如果($('#comments')。是(“:hidden”)){
comments_top=$('#comments').show().offset().top;
$(“#注释”).hide();
}
$(“.inv”)。切换(“慢”);
$('html,body')。停止(true,true)。设置动画({
scrollTop:comments\u top
}, 500);
返回false;
});
});

如果语句应该在单击函数中,请参见更新