Bootstrap 3: (มือถือ) แถบนำทางจะปิดอัตโนมัติเมื่อคุณคลิกเมนูแบบเลื่อนลง [ซ้ำ]

สวัสดี ฉันต้องการความเชี่ยวชาญของคุณเพราะมันทำงานได้อย่างสมบูรณ์แบบในโหมดเดสก์ท็อป แต่ถ้าโหมดมือถือทำงานไม่ถูกต้องเมื่อคุณคลิกเมนูแบบเลื่อนลง มันจะปิดแถบนำทางทั้งหมดโดยอัตโนมัติ

<li class="dropdown">
                            <a data-toggle="dropdown" > Shop </a>
                            <ul class="dropdown-menu">
                                <li><a href="/th<?php echo home_url(); ?>/shop">All Inventory</a></li>
                                <li><a href="/th<?php echo home_url(); ?>/product-category/designer-bags">Designer Bags</a></li>
                                <li><a href="/th<?php echo home_url(); ?>/product-category/designer-accessories">Designer Accessories</a></li>
                                <li><a href="/th<?php echo home_url(); ?>/outright-buying/">Outright Buying</a></li>
                                <li><a href="/th<?php echo home_url(); ?>/Consignment">Consignment</a></li>
                            </ul>
                    </li>

person Filipino Brigade    schedule 29.05.2019    source แหล่งที่มา


คำตอบ (1)


รหัสต่อไปนี้จะขยายเมนูย่อยเมื่อมีการคลิกเกิดขึ้นบน navbar-toggle และจะเปลี่ยน aria-expanded เป็นค่าที่ถูกต้องตามสถานะเปิด/ปิดของเมนูย่อย

function opensubmenus() {
    if ($(window).width() < 768) {
        $("#top-navbar-collapse li").addClass('open');
        $("#top-navbar-collapse li a").attr('aria-expanded','true');
    }else{
        $("#top-navbar-collapse li").removeClass('open');
        $("#top-navbar-collapse li a").attr('aria-expanded','false');
    }
}

$('#top-menu .navbar-toggle').click(function(){
    setTimeout(opensubmenus, 100);
});

$(window).resize(opensubmenus);
opensubmenus();
person Farhad Sakhaei    schedule 29.05.2019