簡體   English   中英

如何顯示元素並在單擊另一個元素時隱藏

[英]How to show an element and hide when click on another

我有一系列的div元素,可以通過下面的代碼觸發。

$(".course_id").on("click", function(){
     var id = $(this).data("id");
     $("div#lessons_by_course_" + id).removeClass("hidden");
});

div的id為lessons_by_course + id,例如

<div id="lessons_by_course1"></div>

使用rails .each循環上的ruby動態解析id號。

我想要的是當我單擊一個div時要顯示的內容,而當我單擊另一個div時,我想要jquery隱藏顯示的最后一個並顯示我接下來單擊的那個。

請注意,.course_id是一個包含許多元素的類,因此,每次單擊某個特定元素時,都會彈出一個不同的div,因為id每次都不同。

您可以將最后顯示的元素的ID緩存在全局變量中:

var id;

然后在您的循環中:

$(".course_id").on("click", function(){
    if(id) {
        $("div#lessons_by_course_" + id).addClass("hidden");
    }
    id = $(this).id;
    $(this).removeClass("hidden");
});

暫無
暫無

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

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