//もっと見る 以外の1〜3までが全て実装できません。
エラーは出ていないです。
画面に反映されないので、どこが違うのかがわかりません。
前提・実現したいこと
1、3件までを表示したい(SPは2件分)
2、3件以上はもっとみるボタンをクリックして全て開くようにしたい
3、3件以下の場合は、ボタンを非表示にしたい
Html
1<div class="item_box" > 2 <ul class="item" id="col"> 3 <li class="item_title">タイトル</li> 4 <li class="item_text">内容</li> 5 </ul> 6 7 <ul class="item" id="col"> 8 <li class="item_title">タイトル</li> 9 <li class="item_text">内容</li> 10 </ul> 11 12 <ul class="item" id="col"> 13 <li class="item_title">タイトル</li> 14 <li class="item_text">内容</li> 15 </ul> 16 17 <ul class="item" id="col"> 18 <li class="item_title">タイトル</li> 19 <li class="item_text">内容</li> 20 </ul> 21 <div class="more_btn" id="more">もっとみる</div> 22 </div>
javascript
1<script> 2$('.item_box').each(function(i) { 3 i = i + 1; 4 var more = 3; //3件表示する 5 $("#morebtn" + i ).hide(); 6 $("#col" + i +" li:not(:lt("+more+"))").hide();//3件以上は記事を非表示にする 7 if($("#col" + i + " li").length > more) { //3件以上はボタンを表示する 8 $("#morebtn" + i ).show(); 9 } 10 11 $(".more").click(function () { 12 id = $(this).attr("id"); 13 var num = id.substr(3,1); 14 if ($("#col" + num + " li:eq("+more+")").is(":hidden")) { 15 $("#col" + num + " li:hidden").show(); //記事を表示する 16 } else { 17 $("#col" + num + " li:not(:lt("+more+"))").hide(); //記事を非表示にする 18 } 19 }); 20}); 21 22//もっと見る 23 $(function(){ 24 $('.more').click(function(){ 25 $(this).hide(); 26 $(this).parent('.item_box').removeClass('onhidden'); 27 }); 28}); 29</script>