2012-06-18 66 views
2

我已創建了一個接受兩個參數的jQuery自定義觸發,但第二個從未到達第二個參數永遠不會到達

//firstly 
$(Crafty).bind('onTsxLoaded', function (event, tsx, firstSpriteId) { 
    console.log("tsx", tsx); 
    console.log("firstspriteid", firstSpriteId); 
} 

//<snip> 
success: function (xml) { 
    var firstSpriteId = tileset.attr("firstgid"); 
    console.log("done loading ts", firstSpriteId); 
    $(Crafty).trigger('onTsxLoaded', xml, firstSpriteId); 
} 

產量:

"done loading ts" 1 
"tsx" object 
"firstspriteid" undefined 

爲什麼是觸發和不確定的權利之前firstspriteid 1後?

回答

2

如果你想使用trigger到額外的參數傳遞給一個事件,他們需要在數組中。

$(Crafty).trigger('onTsxLoaded', [xml, firstSpriteId]); 
+1

啊哈!當然。我已經看到它在文檔中,但已經把它理解爲「可選」。謝謝! –

+0

@BorisCallens:是的,通常是'[]'是指 「任選」 的說法。花了我一段時間來弄清楚。我想的文檔頁面上的一個例子表明,它需要一個數組。 –

相關問題