美好的一天,我有一些奇怪的问题 . 我正在制作一个带有下拉菜单的导航栏 . 但是当我删除数据切换,aria-haspopup和aria-expanded时...我在使用按钮关闭导航栏时出现问题 . 它仍然显示下拉菜单 . 这可能发生在我关闭可能导航栏后打开我的下拉菜单 .

下面是我的示例代码 .

js代码

var sidebarLg = $('#sidebar-lg-toggle');
       var mainNav = $('.first-a:first-child');

       if($( window ).width() >= 992){
           mainNav.removeAttr('data-toggle');
           sidebarLg.click(function(){
               mainNav.toggleClass('dropdown-toggle');

               if(mainNav.hasClass('dropdown-toggle')){
                   mainNav.attr({
                       'data-toggle' : 'dropdown',
                       'aria-haspopup' : true,
                       'aria-expanded' : false
                   });
               }else{
                   mainNav.removeAttr('data-toggle aria-haspopup aria-expanded');
               }

           });
       }else{
           mainNav.addClass('dropdown-toggle');
           mainNav.attr('data-toggle', 'dropdown');
       }

HTML

<button class="navbar-toggler sidebar-toggler d-md-down-none" id="sidebar-lg-toggle" type="button"  data-toggle="sidebar-lg-show">
      <span class="navbar-toggler-icon"></span>
 </button>


<nav class="navbar navbar-light navbar-expand-lg mainmenu nav-bar-view-sm-device">
            <div class="collapse navbar-collapse" id="navbarSupportedContent">
                <ul class="navbar-nav">
                    <li class="nav-item dropdown px-1 float-sm-left">
                        <a class="nav-link first-a" href="#">SERVICES</a>
                        <ul class="dropdown-menu">
                            <li><a class="dropdown-item" href="#">Action</a></li>
                            <li><a class="dropdown-item" href="#">Another action</a></li>
                        </ul>
                    </li>
                </ul>
            </div>
        </nav>