2011-03-24 93 views
0

好吧,所以基本上我正在實現一個簡單的水平滾動條。當我將鼠標移動到正確的div中時,該函數被觸發,但只有一次,並且在間隔時間後不再循環。任何幫助理解:jQuery/javascript和setInterval在mouseenter中無法正常工作

$(document).ready(function() { 
    $('#toparrow').mouseenter(function(e) { 
     var func = scrollroller(1); 
     setInterval(func,1); 
    }).mouseleave(function() { 

    }); 

    function scrollroller(velocity) { 
     $('#roller').animate({left:'+='+velocity},1); 
    } 
}); 

回答

2
var func = function(){ scrollroller(1); }; 
+0

謝謝你完美的作品 – Msencenb 2011-03-24 01:27:59

0

問題是與這一行:

var func = scrollroller(1); 

這不是分配scrollroller功能func,則調用與scrollroller() '1' 的參數並將結果存儲在func中。你可能想要做的事,如:

setInterval("scrollroller(1);",1); //alternately: setInterval(scrollroller,1,1); 

注意,替代語法可能有issues in IE

相關問題