2011-09-21 86 views
0

我是一個在查詢noob,並試圖使一個,顯然很簡單的事情發生。這是我做的jsfiddle。正如你看到我有3個按鈕:關閉(關閉所有打開的div)AZ和AR。當我點擊AZ時,它會滑下來,當我點擊AR(假設AZ仍然打開)時,它會將AZ上移並滑動AR,因此一次只能打開1個div。但是,如果我點擊打開的div,它會向上滑動並再次向下滑動。我想要做的是當div打開(即向下滑動),我點擊它不應該再滑動 - >向下。換句話說,如果div是開放的,那麼當我再次點擊它時什麼也不應該發生,因爲我有一個關閉按鈕。jQuery SlideUp/SlideDown madness

預先感謝您。

回答

0

這對我的作品

http://jsfiddle.net/wfUu5/4/

不說這是理想的解決方案(整個代碼可以寫成更好),但它使用的代碼

+0

偉大的,我知道這是很容易!謝謝。 – mrkrabs

+0

你是對的,它的效果很好,但假設我有20個不需要滑動的2格,那麼這將是大量的代碼。有沒有辦法刪除所有元素上的'active'類,而不是像這裏$('#az,#ar')那樣指定#az,#ar。removeClass('active'); ? – mrkrabs

+0

添加一個普通的類,即'slide-togglers',然後簡單地執行'$('。slide-togglers')。removeClass('active');' – mreq

0

如果你有可能解決您的問題清理該代碼有點我做了一個簡單的方法,使其更加動態:http://jsfiddle.net/wfUu5/5/

多數民衆贊成如何,我會解決它。

,如果你對你的TDS想要一個「.selected」類:http://jsfiddle.net/wfUu5/6/

+0

這真是太棒了,謝謝,我會盡量優化我的代碼並試一試。 – mrkrabs