2011-11-10 54 views
0

我有一個幻燈片。當我懸停時,間隔被清除。當我懸停時,間隔開始。 interval函數將活動類(在鼠標懸停時添加到其中一個li)添加到下一個li。 要開始它,我必須觸發其中一個幻燈片li的鼠標懸停功能。當我出來時,我清除了間隔,但同時移除了活動班,因爲鼠標已經不在任何裏面了。所以,到目前爲止,我已經實現了幻燈片再次開始,但只能從第一次開始。如何存儲最後一個li mouseover,然後從那裏開始幻燈片放映? 以下是我的代碼...jquery如何存儲最後一次鼠標觸發器

var timer, autoAdvance = function(){$("#accordion-slider li:first").addClass('first');$("#accordion-slider li:last").addClass('last');var currentSlide=$("#accordion-slider .active");var nextSlide=$("#accordion-slider .active").next();(!currentSlide.is('.last'))?$(nextSlide).trigger('mouseover'):$("#accordion-slider .first").trigger('mouseover')/*.next().addClass('next')*/;} 
var timer = setInterval(autoAdvance,2000); 

$().ready(function() { 
    //using kwicks plugin for slides 
$('#accordion-slider').kwicks({ 
    max : 500, 
    spacing : 5, 
}); 


$('#accordion-slider').hover(function() { 
    clearInterval(timer); 
}, function() { 
    timer = setInterval(autoAdvance, 2000); 
    $("ul#accordion-slider li:first").trigger('mouseover'); 
     }); 

回答

1

我不會說你的方法是最好的方法。但是,我認爲這都是一條學習曲線。要存儲數據,請使用data()屬性。你可以像這樣使用手風琴滑塊上的數據

//-- set 
$("ul#accordian-slider").data("somekey", "somevalue"); 

//-- get 
$("ul#accordian-slider").data("somekey"); 
+0

你會怎樣做? – webestdesigns

+0

可能是這樣的 http://jsfiddle.net/pT4t7/17/ – Lee

相關問題