基本的に巨大なコンテンツ スライダーである Web サイトを作成したいと考えています。ページの読み込み時に div 1 (基本的には画面全体) が表示され、下矢印をクリックしてページ 2 などに移動できます。ページ 2 に到達すると、Iまた、左右に移動できるようにしたい場合 (2 ページのみ)、画像スライダーと考えてください。ただし、div があります。
利用可能なプラグインがあることは知っていますが、自分で書くのはかなり好きです。機能する(基本的な)JQueryをいくつか書きましたが、肥大化しすぎているようで、より良い/より効率的な方法が必要でした..私が求めているものこれにアプローチする最良の方法は次のとおりです。学習して改善したいのでコードを探していませんが、これに取り組む最良の方法が思いつきません。ある種のスイッチステートメントを使用することは可能ですか? どのようにそれを行うつもりですか?
また、div の数を超えてスクロールできないようにする方法も必要です。現在、if ステートメントで var を使用していますが、全員を単純な関数に結合する方法が必要だと感じていますか?
JS は以下にあり、JSFiddle もあります
ありがとう!
$(function () {
var box = $('.box');
TriggerClick = 0;
$("#down").click(function(){
var height = $('.box').outerHeight();
if(TriggerClick == 0){
TriggerClick = 1;
$(box).stop().animate({top:'-='+height}, 500);
}else if(TriggerClick == 1){
TriggerClick = 2;
$(box).stop().animate({top:'-='+height}, 500);
}
});
$("#up").click(function(){
var height = $('.box').outerHeight();
if(TriggerClick == 2){
TriggerClick = 1;
$(box).stop().animate({top:'+='+height}, 500);
}else if(TriggerClick == 1){
TriggerClick = 0;
$(box).stop().animate({top:'+='+height}, 500);
}
});
$("#left").click(function(){
var height = $('.box').outerHeight();
if(TriggerClick == 1){
$(box).stop().animate({left:'-='+height}, 500);
}
});
$("#right").click(function(){
var height = $('.box').outerHeight();
if(TriggerClick == 1){
$(box).stop().animate({left:'+='+height}, 500);
}
});
});