簡體   English   中英

如果元素具有類,則將類添加到另一個元素

[英]If element has class add class to another element

不知道我是否做對了。 我有一個在打開和關閉之間切換的菜單。 現在,如果菜單hasClass("open");我想顯示一個按鈕hasClass("open"); 我想一旦去除類class open走了。

這是HTML部分;

<nav>
    <a class="closed"><i class="fa fa-bars"></i>Menu</a>
        <ul>
            <li>Menu items</li>
        </ul>
    <div class="close-btn">
        <i class="fa fa-times" aria-hidden="true"></i>
    </div>
</nav>

HTML可以正常工作,所以它並不是那么重要,重要的是元素是: navaclosed

現在到jQuery部分;

$(document).ready(function(jQuery) {
    if ($("nav a").hasClass("open")) {
        $(".close-btn").addClass('show-me-the-button');
    } else {
        $(".close-btn").removeClass('show-me-the-button');
    }
});

但這是行不通的。 我已經搜索了stackoverflow,但是所有人都給了我這段代碼……不知道為什么它不起作用。 我沒有腳本錯誤...有什么幫助嗎?

您僅在初始頁面加載時檢查類。 您在哪里更改open課? 您應該將該代碼移到該位置。

用戶-Oryol是正確的

嘗試將代碼放入這樣的處理程序中:

$(document).ready(function(jQuery) {

    $('nav a').on('click', function(e) { // <----------- Click Handler (jQuery)

        // Use $(this) to access current clicked element
        if ($(this).hasClass("open")) {
            $(".close-btn").addClass('show-me-the-button');
        } else {
            $(".close-btn").removeClass('show-me-the-button');
        }

    })

});

查看有關jQuery中的Click Handler的更多信息

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM