2013-07-19 106 views
0

方案切換打開關閉目標列表

在頁面上

多個UL列表,併爲每個: 1:我想有一個打開/關閉連接 2:我想顯示不同數量的每個列表的

到目前爲止,我可以做(2),但是當我嘗試做(1)我打開/關閉打開所有的東西頁

小提琴設立在這裏:http://jsfiddle.net/topiman/WD9nf/2/

$('.show-more a').click(function() { 
    $('.toggle-list').find('.toggle-items').slideToggle('fast'); 
    return false; 
}); 

理想的情況下,則:

一:打開鏈接可以改變爲打開

b當 '關閉':每一個環節只打開relevan UL

C:幻燈片可能是平滑

我已經看到這種有點在其他線程回答,但通常標記和觸發器在我需要它們的不同地方

在此先感謝

.ben。

+0

而且問題是.....? –

回答

1

英語新HOULD找到closest block-content第一則find toggle-items

$('.show-more a').click(function() { 
    $(this).closest('.block-content').find('.toggle-list .toggle-items') 
      .slideToggle('fast'); 
    return false; 
}); 

Fiddle

2

使用的this實例找到正確的列表,如改變文本,在切換的回調一個簡單的檢查就可以了:

$('.show-more a').click(function() { 
    var that = $(this); 
    $(this).parent().prev(".toggle-list").slideToggle(function() { 
     $(this).is(":visible") ? that.text("Close") : that.text("Open"); 
    }); 
    return false; 
}); 

演示:http://jsfiddle.net/WD9nf/10/

+0

非常感謝您的回答:-)! - 羅漢我已經調整了你的能夠包括非UL項目 http://jsfiddle.net/topiman/WD9nf/17/ 這可以調整,以便打開更改爲關閉等 – topiman

+0

非常感謝爲你的答案:-)! - 羅漢我已經調整了你的能夠包括非UL項目 http://jsfiddle.net/topiman/WD9nf/17/ 這可以調整,以便打開更改爲關閉等 – topiman

+0

@topiman - 只需將上面的三元添加到回調中,就像'slideToggle('fast',function(){....});'' – tymeJV