2011-01-07 63 views
0

用我的'添加一個框'按鈕,添加一個框。 追加!您可以在框中添加一些元素(.togglecontainer)以確切地爲 隨着show more/show les按鈕,我希望整個togglecontainer位於該按鈕下方,以切換隱藏和顯示。JQuery;切換隱藏顯示效果全部!如何預防?

我明白爲什麼所有具有該類名的容器都開始切換,但我只希望切換其切換按鈕下的容器。

我試過這段代碼,但沒有正常工作;

$('.togglebtn').toggle(function() { 
    $('.togglecontainer').hide();  
    $(this).html('Show less'); 
}, function() { 
    $('.togglecontainer').show(); 
    $(this).html('Show more'); 
}); 

任何人都可以解釋我並幫助我如何使這項工作? 在此先感謝!

這是我的代碼; http://jsfiddle.net/2LTd9/

+1

等一下,切換不接受兩個回調。請參閱[文檔](http://api.jquery.com/toggle/)。 – 2011-01-07 19:45:41

+0

@Marcus Whybrow謝謝 – Opoe 2011-01-07 20:23:53

回答

1

您需要一個範圍選擇器。 試試這個:

$('.togglebtn').toggle(function() {    
$('.togglecontainer', this).hide();      
var txt = $(this).html(); 
$(this).html((txt=='Show less')?'Show more':'Show less');  
}); 

編輯:更新的代碼,每個操作的輸入@的jsfiddle。

更新了代碼並張貼了@http://jsfiddle.net/Chandu/PtwWD/2/ 檢查它並讓我知道這是不是你想要的。

+0

謝謝Cyber​​nate,它似乎沒有切換可見性,但它確實在html之間切換顯示較少/顯示更多 – Opoe 2011-01-07 19:49:48

1

toggle()不接受兩個回調函數。

請閱讀jQuery docs以獲取有關如何使用切換的更多信息。