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 和之后未定义?

4

1 回答 1

2

如果您想使用 将额外参数传递给事件trigger,则它们需要位于数组中。

$(Crafty).trigger('onTsxLoaded', [xml, firstSpriteId]);
于 2012-06-18T17:40:55.107 回答