我試圖用jQuery創建隱藏/顯示按鈕。當點擊.cminus時,它需要隱藏.arrowwrap和.commentbody,並用cplus替換它自己的類。然後,如果.cplus被點擊相反需要發生。被替換的類的jquery事件
問題1:在示例後.cminus被替換.cplus以下時,.cplus不火單擊時單擊事件。
(編輯問題2移到分開票) 問題2:我沒有達到隱藏.commentbody右/顯示它
HTML:
<div class="commentline">
<div class="carrowholder">
<div class="cminus"></div>
<div class="arrowwrap">
</div>
</div>
<div class="commentholder">
<div class="commenttitle">
Title
</div>
<div class="commentbody">
Body
</div>
</div>
</div>
jQuery代碼:
$('.cminus').click(function(e) {
$(this).next('.arrowwrap').hide();
$(this).parent().next('.commentholder .commentbody').hide();
$(this).removeClass('cminus');
$(this).addClass('cplus');
})
$('.cplus').click(function(e) {
alert("clicked cplus");
$(this).next('.arrowwrap').show();
$(this).addClass('cminus');
$(this).removeClass('cplus');
})
關於問題1.被替換的類不被識別嗎?你可以擴展你的解決方案嗎?並且移除.commentholder不會解決第二個問題。 – DavidW
如果添加了一個類的帖子綁定,那麼除非使用委託事件,否則該事件不會綁定到該元素。 –
明白了。修復了單個事件偵聽器的第一個問題。仍然想知道第二個,雖然 – DavidW