簡體   English   中英

單擊以顯示帶有 Javascript 的 div

[英]Click to reveal div with Javascript

我的網站上有一個頁面,我在其中顯示一個內容塊並為用戶提供單擊“查看更多”以顯示更多內容的選項。

這是我當前的演示

HTML:

<p>
<a href="#" id="category36SeeMore">See more</a>
</p>

<div class="category36">
test
</div>

<div class="category36" style="display:none;">
test
</div>

<div class="category36" style="display:none;">
test
</div>

<div class="category36" style="display:none;">
test
</div>

有人可以給我一些關於如何為#category36SeeMore創建 function 的指示,以便它顯示所有帶有 class category36的 div 嗎?

category36SeeMore點擊時,您可以先獲取其 id,然后從中替換SeeMore ,如下所示:

const id = this.id.replace('SeeMore', '')

因此,您可以從中獲取實際的 class 名稱category36 然后,您可以使用以下命令找到具有該 class 的所有元素:

document.querySelectorAll('.' + id)

最后使用.forEach ,將所有元素的顯示樣式更改為block以使所有元素再次可見。

演示:

 const btn = document.getElementById("category36SeeMore"); btn.addEventListener("click", function(e){ e.preventDefault(); const id = this.id.replace('SeeMore', '') document.querySelectorAll('.' + id).forEach(el=>el.style.display = 'block') });
 .category36 { margin: 5px; padding: .5rem; box-shadow: 2px 2px 5px rgba(0,0,0,0.03); border-radius: 4px; background: Skyblue; border-bottom: 1px solid #F9F2D6; border-right: 1px solid #F9F2D6; }
 <p> <a href="#" id="category36SeeMore">See more</a> </p> <div class="category36"> test </div> <div class="category36" style="display:none;"> test </div> <div class="category36" style="display:none;"> test </div> <div class="category36" style="display:none;"> test </div>

您可以使用jquery

<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script>
$(document).ready(function(){
    $("#category36SeeMore").click(function(){
        $(".category36").css('display','block');
    });
});
</script>

暫無
暫無

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

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