我從頭開始在JQuery中創建一個photoslider,我使用setInterval()以使圖像每3秒運行一次。但是,我正在使用播放/停止按鈕,因爲它必須等待間隔才能完成以檢測按鈕,所以它不響應我的需要。我可以使用另一個選項,以便播放/停止按鈕立即響應?謝謝!jQuery照片滑塊中setInterval()的替代方法
var test = parseInt($interval.val(),10)+1000;
var test2 = test;
function runInterval() {
$(".slider #" + count_image).show("slide", {
direction: "right"
}, 500);
test2 = test;
if ($("#parrafo").text() == "Play") {
$(".slider #" + count_image).delay($interval.val()).hide("slide", {
direction: "left"
}, 500);
if (count_image == max_images) count_image = 1;
else count_image = count_image + 1;
}
$interval = $("select#mySelect option:selected");
test = parseInt($interval.val(), 10) + 1000;
clearInterval(s);
s = setInterval(runInterval, test2);
}
s = setInterval(runInterval, test2);
聽起來像間隔,你的幻燈片代碼太耦合了。點擊按鈕後,您是否可以設置一個變量來表示它已被點擊,然後即使回調被觸發,photoslider也不會執行任何操作。 – 2013-04-07 17:30:26
這就是間隔功能: 功能runInterval() { $(+ count_image」滑塊# 「).show(」 滑動,{方向: 「右」},500); TEST2 =測試; 如果($ (「#parrafo」)。text()==「Play」) {(「。slider#」+ count_image).delay($ interval.val())。hide(「slide」,{direction:「左 「},500); 如果(count_image == max_images) count_image = 1;否則 count_image = count_image + 1; \t \t } $間隔= $(」 選擇#mySelect選項:選擇「); test = parseInt($ interval.val( ),10)+ 1000; clearInterval(s); \t \t \t s = setInterval(runInterval,test2); } s = setInterval(runInterval,test2); – 2013-04-07 21:19:17
請問您可以在原始問題中粘貼代碼嗎?如果可能,請使用http://jsbeautifier.org/等格式。 – 2013-04-07 21:23:48