0
本来我有两个函数,第一个函数是dataLoaded
,其中有一个eventListener,它产生了一个名为itemClicked
的新函数。但是,如果我想添加delayedFunction
并将itemClicked
作为dataLoaded
和delayedFunction
之间的间歇阶段,那么当我在我的delayedFunction
中引用它时,如何访问原始听众的event.target
或event.currentTarget
?在侦听器之外访问event.target或event.currentTarget函数
private function dataLoaded(event:Event):void {
//items properties call - add other calls to master properties later on
items = data.item;
// parsing of each ingredient
for (var i = 0; i < items.length(); i++) {
// instantiation of mcItem (the stage for each item)
_item = new Item();
// sets //over// layer to invisible/transparent
_item.item_btn_over.alpha = 0;
// creates the var itemTextField
_itemTextField = new TextField();
_itemTextField.text = items[i].toString();
// adds textfield to displaylist
_item.addChild(_itemTextField);
//adds items to container displaylist
_container.addChild(_item);
}
_item.parent.addEventListener(MouseEvent.CLICK, itemClicked);
}
function itemClicked(event:MouseEvent):void {
if (event.target is Item) {
var item:Item = Item(event.target);
TweenLite.to(item.btn_delete, 1,{rotation:180});
setTimeout(delayedFunction,5000);
item.parent.removeChild(item);
parseXML(data);
}
}
function delayedFunction():void {
var item:Item = Item(event.target);
item.parent.removeChild(item);
}
(我嘲笑了上面的功能,所以我可能会丢失一些右括号,但是这并不就该事到我的问题)
这个问题一直在我的脑海几天,我想不到一种方法可以让父_item
的event.target
访问除监听功能以外的其他功能。
我需要声明参数数组还是'arguments'作为传递参数的内置关键字吗? – adaam 2013-04-22 00:25:30
不,你不需要声明'arguments'数组。它是为每个功能而制作的。查看参数文档(http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/arguments.html)) – 2013-04-22 01:13:38