我一直試圖使用jQuery的scrollLeft
創建一個小滑動部件,該部件由此特定頁面元素兩側的兩個<div>
元素操作。儘管有些人會稱之爲非常糟糕的做法,並且可能帶有一些令人難以置信的原始代碼,但最初的一切似乎都按預期工作。 試圖使元素更容易使用我決定包含一個if語句,以便使圖像循環回到第一個,如果按鈕被點擊的次數多於存在的圖像的次數。ScrollLeft不與「if」語句結合使用
本質的代碼工作如下(其中每個圖像是100個像素寬)
$("#next").click(function() {
position = position + 100;
$("#wrap").animate({
scrollLeft: (position)
});
});
但停止時變爲
$("#next").click(function() {
if (positon < 300){
position = position + 100;
$("#wrap").animate({
scrollLeft: (position)
});
} else {
loopBack();
}
});
其中loopBack
是設定position
爲0的函數的工作並按照初始(工作)功能進行。 JSHint報告沒有代碼語法本身的問題,我已將值檢查更改爲position != 300
,以查看它做了什麼差異(沒有,因爲它實際上)。
的JSFidde可以在這裏找到:http://jsfiddle.net/ActualRealJamz/8WcUb/7/ 落後的功能一直保持按原來如此,你可以看到它是如何開始工作,wrap
具有已啓用x軸滾動,這樣它實際上可以使用落後功能。
我對這裏的想法非常堅持,任何幫助都會在這裏得到最多的讚賞。
什麼'position'包含在函數的開始?它是一個(吞噬!)全局變量? – lucke84
「Uncaught ReferenceError:** positon **未定義」 – gvee
另外我認爲你需要檢查'200',而不是'300',因爲只有3個塊。否則會有額外的點擊需要回滾到0 – Pointy