我正在製作一個基本的jQuery滑塊,但我注意到我基本上重複了兩次自己。唯一的區別是var prev和prev方法。第一種方法是持續的方法。修復DRY代碼幫助javascript?
left.on('click', function(){
var current = $('.active');
var prev = current.prev();
if (prev.length === 0){
prev = $(".slides").last();
}
current.fadeOut(300).removeClass("active");
prev.fadeIn(300).addClass("active");
});
right.on('click', function(){
var current = $('.active');
var next = current.next();
if (next.length === 0){
next = $(".slides").first();
}
current.fadeOut(300).removeClass("active");
next.fadeIn(300).addClass('active');
});
我試過這個功能,但它不起作用。我是初學者,所以我不知道這種功能是否可能。
function slider(x, y){
var current = $('.active');
var x = current.x();
if (x.length === 0){
x = $(".slides").y();
}
current.fadeOut(300).removeClass("active");
x.fadeIn(300).addClass('active');
});
right.on('click', slider("next", "first"));
left.on('click', slider("prev", "last"));
可選擇地封閉:'函數滑塊(X,Y){回報函數(){ ...}}' – laughingpine