如果另一个 div 高度溢出,则显示/隐藏按钮

时间:2021-03-25 12:29:49

标签: javascript html jquery css

我需要根据导航列表 div 高度溢出来显示/隐藏 div 按钮,如果列表溢出则显示按钮,否则隐藏它。

JQuery

 // didnt work for me! 
    if($('#nav-list').prop('scrollHeight') < $('#nav-list').height()){
    $('#updown-arrows').hide();
    }else{
    $('#updown-arrows').show();
    }

HTML

<div id="nav-list">
 
  <!-- wordpress nav menu -->
  <?php
  wp_nav_menu(
    array(
      'theme_location'    => 'primary',
      'depth'             => 2,
      'menu_class'        => 'list-unstyled components',
      'menu_id'         => 'sidebarnav',
      'fallback_cb'       => 'wp_bootstrap_navwalker::fallback',
      'walker'            => new wp_bootstrap_navwalker()
    )
  );
  ?>
</div>
<!-- up/down arrows buttons -->
<div id="updown-arrows">
  <a  id="up" href="#"><span class="glyphicon glyphicon-menu-up" aria-hidden="true"></span></a>
  <a  id="down" href="#"><span class="glyphicon glyphicon-menu-down bounce" aria-hidden="true"></span></a>
</div>

1 个答案:

答案 0 :(得分:0)

如果有人遇到同样的问题

  function checkOverflow() {
            if ($('#nav-list').prop('scrollHeight') <= $('#nav-list').prop('clientHeight')){
                    $('#updown-arrows').hide();
                    
                } else {
                    $('#updown-arrows').show();
                    
                }
            }

            checkOverflow();
            $(window).resize(function () {
                checkOverflow()
            })
相关问题