我正在尝试trace
启动eventListener
的按钮的名称。但相反,我一直在
instance11
而不是movieClip的名称,该名称应该是0-5
之间的数字
是我的动作的一部分。
import fl.transitions.Tween;
import fl.transitions.easing.*;
import fl.transitions.TweenEvent;
var columns:Number = 3;
var my_x:Number;
var my_y:Number;
var my_thumb_width:Number = 310;
var my_thumb_height:Number = 440;
var my_groups:XMLList;
var my_total:Number;
var x_counter:Number = 0;
var y_counter:Number = 0;
var title_message:String = "xxxxxx";
var container_mc:MovieClip;
var my_tweens:Array = [];
var container_mc_tween:Tween;
var full_tween:Tween;
var myXMLLoader:URLLoader = new URLLoader();
myXMLLoader.load (new URLRequest("config/menu.xml"));
myXMLLoader.addEventListener (Event.COMPLETE, processXML);
function processXML (e:Event):void {
var myXML:XML = new XML(e.target.data);
my_groups = myXML.group;
my_total = my_groups.length();
createContainer();
callThumbs();
}
function createContainer():void {
container_mc = new MovieClip();
container_mc.x = 425;
container_mc.y = 125;
addChild(container_mc);
container_mc.addEventListener(MouseEvent.CLICK, callSub);
container_mc.buttonMode = true;
}
function callThumbs():void {
for (var i:Number = 0; i < my_total; i++) {
var thumb_url = my_groups[i].@thumb;
var thumb_loader = new Loader();
thumb_loader.load(new URLRequest(thumb_url));
thumb_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, thumbLoaded);
thumb_loader.name = "thumb_" +i;
trace(thumb_loader.name);
thumb_loader.x = (my_thumb_width+10)*x_counter;
thumb_loader.y = (my_thumb_height+10)*y_counter;
if (x_counter+1 < columns) {
x_counter++;
} else {
x_counter = 0;
y_counter++;
}
}
}
function thumbLoaded(e:Event):void {
var my_thumb:Loader = Loader(e.target.loader);
container_mc.addChild(my_thumb);
my_tweens[Number(my_thumb.name)]=new Tween(my_thumb, "alpha", Strong.easeIn, 0,1,0.5, true);
my_thumb.contentLoaderInfo.removeEventListener(Event.COMPLETE, thumbLoaded);
}
function callSub(e:MouseEvent):void {
trace("IN CALL SUB");
trace(e.currentTarget.name);
}
答案 0 :(得分:1)
尝试设置:
thumb_loader.mouseChildren = false;
然后追踪:
trace(e.target.name);
答案 1 :(得分:0)
尝试使用e.currentTarget.name
事件对象跟踪捕获/冒泡堆栈中的两个目标。 e.target
始终是引发事件的EventDispatcher,而e.currentTarget
是当前处理事件的EventDispatcher。
您实际点击 on 的孩子是e.target
,这就是禁用儿童鼠标事件的原因。该事件并未冒泡任何父亲,因此e.target
与e.currentTarget
相同。