2016-11-03 2 views
1

요소로 스크롤하지 않는 이유를 이해할 수 없습니다.토글 후 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', '.showhide', function() { 
      $(".inv").toggle("slow"); 
      $('html, body').stop(true, true).animate({ 
       scrollTop: $('#comments').offset().top 
      }, 500); 
      return false; 
     }); 
    }); 
</script> 

답변

1

.show() 다음은 .hide()를 사용하여 숨길 사용 .offset().top를 얻을. 문 안에 클릭 기능 할 필요가있는 경우

<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> 
+0

이 –

+0

업데이트를 참조하십시오 작동하지 않습니다를 보인다 :

이 예제를 참조하십시오 –

관련 문제