関数側で"ctlr"の値を取得するのではなく、イベント側で取得した値を関数に飛ばす方法

前提

ここに質問の内容を詳しく書いてください。
(例)
まだ初心者で、勉強を進めているのですが、jQueryでの関数とイベントがあまり理解できていないです。
以下にコードと例を載せるので教えて欲しいです。

実現したいこと

イベントと関数は分ける。イベントから関数を呼び、処理に必要な値はイベントから引数として飛ばす。

発生している問題・エラーメッセージ

関数とイベントのわけ方

該当のソースコード

jQuery

var $length = $(".slider-list").children("li").length, $photoSize = $(".slider-list").children("li").width(), dataContainer = [], clickCount = 0;
for(var i = 0;i < $length;i++) { dataContainer[i] = $photoSize*i; } $(".slider-ctrl-btn").on("click", function(){ clickMoving(this); }); const clickMoving = function(_this){ if ($(_this).data("ctrl") === "next") { if(clickCount < $length-1){cons clickCount++ }else{ clickCount = 0; }; $(".slider-list").animate({ marginLeft : -dataContainer[clickCount] }); }else if ($(_this).data("ctrl") === "prev"){ if(clickCount == 0){ clickCount = $length-1; }else { clickCount--; } $(".slider-list").animate({ marginLeft : -dataContainer[clickCount] }); } };

コメントを投稿

0 コメント