我已經看到了這個問題的不少迭代,但沒有解決我的特定問題。jQuery slideDown()slideUp()需要兩次點擊
單擊h3
時觸發切換下方鏈接列表可見性的問題時會出現問題。選擇器和行爲正常工作,顯示隱藏的項目並正確隱藏其他項目。然而,一旦頭被點擊一次,它必須被點擊兩次以執行切換。這是一個小煩惱,但我想要一個解決方案。
因此,點擊一個標題會關閉它,如果它關閉,如果它是打開的,則分別添加和刪除.active
類......都很好。
點擊另一個標題也會正常運行,隱藏打開的列表並打開點擊的標題。
但是,如果你去回到第一個標題,以前打開,但現在關閉,只需單擊它不會啓動切換。它必須再次點擊。
這就是問題所在。我對頁面代碼的訪問權限有限,因此大多數遍歷選擇都必須在jQuery中完成,且標籤已經就位。
這裏的網頁有問題: http://queensvw.com/documents/stackoverflow
這裏是jQuery的:
$(document).ready(function() {
function hideAll() {
$('#minutes_highlights .date_heading').nextAll('.document_listing').slideUp();
}
hideAll();
$('#minutes_highlights .date_heading').click(function() {
if ($(this).hasClass('active')) {
$(this).removeClass('active');
$(this).nextUntil('hr').slideUp();
} else {
$(this).addClass('active');
hideAll();
$(this).nextUntil('hr').slideDown();
}
});
});
我嘗試添加一個preventDefault()
和基於其他線程setTimeout()
。說實話,我不確定他們爲什麼會重要,因爲我不是在a
上採取行動,但他們並沒有解決點擊問題。
有關如何避免第二次點擊的任何想法?
我真** **真的很討厭它,當我想念明顯的時候。往往是這樣。感謝新鮮的眼睛;我總是可以依靠SO來獲得正確的發展方向。那樣做了。固定。謝謝! – dashard