我很難找到任何有助於解決此問題的信息。我嘗試了其他幾種可以在這裏爲其他人工作的選項,但它似乎並沒有工作。.removeClass不工作,並阻止.addClass工作
我有一個div設置是這樣的:
<div class="dynamic-content">
<div class="button"></div>
<div class="content"></div>
</div>
我試圖做的是應用CSS動畫。動態內容.button被點擊時,通過添加特定階級,然後再次單擊.button刪除該動畫並刪除特定的類。
這裏是我的jQuery:
$(".button").on('click', function() {
if ($(".dynamic-content").hasClass('open')) {
$(".dynamic-content").removeClass('open'));
} else {
$(".dynamic-content").addClass('open'));
}
}
如果我不包括.removeClass()的一部分,addClass完美的作品。但是,一旦我將.removeClass放入檢查器中,我就會看到.dynamic-content點亮,就好像JS有針對性並採取行動一樣,但沒有任何反應,甚至沒有.addClass正在運行。
你如何調試?因爲你的發佈代碼中有明顯的錯字,所以?! –
嘿,謝謝你指出了!我認爲這是一個問題,我在這裏重新輸入代碼。不過,我確實仔細檢查了我的代碼,以確保我沒有任何額外的括號。 – VeryOddlySpecific
其他問題可能是因爲你有'.button'嵌套元素,所以每次點擊都會觸發兩次事件hanlder。或者你有任何其他的點擊處理程序綁定到任何父母再次切換此類。如果你添加:'$(「。button」)。on('click',function(e){e.stopPropagation();/*其餘代碼* /});' –