次のjQueryコードは要素を呼び出し、要素内の最初の3つのul
リスト項目を検索し、残りの項目を非表示にします。次に、「もっと見る...」という要素を追加し 、クリックすると、以前に非表示にされていたリストアイテムを表示します。 li
li
li
(質問の下部にあるjsFiddle)
$('ul')
.find('li:gt(2)')
.hide()
.end()
.append(
$('<li>Show more...</li>').click( function(){
$(this).siblings(':hidden').fadeIn(500);
})
);
十分に単純です。ここで、ユーザーが[もっと見る...]をクリックしたときに非表示のリストアイテムを表示するだけでなく、元々表示されていた最初の3つのリストアイテムも非表示にする必要があります。イラストによる:
コードが現在生成するもの:
- List Item #1
- List Item #2
- List Item #3
- Show more...
(クリック)
- List Item #1
- List Item #2
- List Item #3
- List Item #4
- List Item #5
- Show more...
発生する必要があるもの:
- List Item #1
- List Item #2
- List Item #3
- Show more...
(クリック)
- List Item #4
- List Item #5
- Show more...
使いやすさのために、 [もっと見る...]をもう一度クリックすると、最初の3つのリスト項目が再び表示され、残りのリスト要素が非表示になると便利です。
jsFiddle: http: //jsfiddle.net/g9L9R/