2014-01-28 96 views
0

爲什麼我的Interval不能調用函數dauerrotieren()
它將字符串附加到html div,所以Interval正在工作。setInterval函數只能調用一半

var i = 180; 

function dauerrotieren(){ 
    $("#bannerrotater").css({"transform":"rotateX(" + i + "deg)"}); 
    i += 180; 
    alert(1); 
} 
var run = setInterval('$("#test").append("1231312"); dauerrotieren()', 1000); 
+0

控制檯中的任何錯誤? –

回答

1

SetInterval方法第一個參數應該運行,所以試試這個。

var run = setInterval(function(){ 
$("#test").append("1231312"); 
dauerrotieren(); 
}, 1000); 
3

提供一個功能,而不是一個String作爲第一個參數功能:

var run = setInterval(function(){ 
    $("#test").append("1231312"); 
    dauerrotieren(); 
}, 1000); 
0

這是最好使用封閉,路過從而將功能,而不是一個setInterval。 這使得一個更正確的語法,與獎金,它是:

  • 容易undersant
  • 高亮其語法
  • 可重複使用的

所以不喜歡:

var run = setInterval(function(){ 
    $("#test").append("1231312"); 
    dauerrotieren(); 
}, 1000); 

或者可能:

function doSomething() { 
    $("#test").append("1231312"); 
    dauerrotieren(); 
} 
var run = setInterval(doSomething, 1000);