progateのjQueryを学習しています。
答えのコードの中で、わざわざ変数で定義する必要があるのか疑問に思ったので質問させて頂きました。(** **の間の部分のことです)
### 該当のソースコード ```jQuery $(function() { $('.index-btn').click(function() { $('.active').removeClass('active'); var clickedIndex = $('.index-btn').index($(this)); $('.slide').eq(clickedIndex).addClass('active'); }); $('.change-btn').click(function() { ** // 変数$displaySlideを定義してください var $displaySlide = $('.active'); ** // 変数$displaySlideからactiveクラスを取り除いてください $displaySlide.removeClass('active'); // ifとelseを用いて、$displaySlideの前もしくは次の要素に // activeクラスをつけてください if ($(this).hasClass('next-btn')) { $displaySlide.next().addClass('active'); } else { $displaySlide.prev().addClass('active'); } }); });
###私の意見
この書き方ではいけないのでしょうか?
コードの長さ的にわざわざ定義する必要があるのかと疑問に思いました。
jQuary
1$(function() { 2 $('.index-btn').click(function() { 3 $('.active').removeClass('active'); 4 var clickedIndex = $('.index-btn').index($(this)); 5 $('.slide').eq(clickedIndex).addClass('active'); 6 }); 7 8 $('.change-btn').click(function() { 9 10 // 変数$displaySlideからactiveクラスを取り除いてください 11 $('.active').removeClass('active'); 12 13 // ifとelseを用いて、$displaySlideの前もしくは次の要素に 14 // activeクラスをつけてください 15 if ($(this).hasClass('next-btn')) { 16 $('.active').next().addClass('active'); 17 } else { 18 $('.active').prev().addClass('active'); 19 } 20 }); 21});
私の書き方で何かエラーになるとか不都合があるなら教えて頂きたいです!
![guest](/img/icon/icnUserSample.jpg)
回答2件
あなたの回答
tips
プレビュー