我有两个as3代码的框架:
// frame1:
gotoAndPlay("show controls");
// frame2 - have movieclip with name slide0
// create menu items click listeners
for (var i:int = 0; i < slides.items.length; i++) // slides.items.length = 1
this["menu_item"+i].addEventListener(MouseEvent.CLICK, menu_item_click);
// click on the first menu item
this["menu_item0"].dispatchEvent(new MouseEvent(MouseEvent.CLICK));
// menu item click handler
function menu_item_click(e:MouseEvent):void {
this["slide0"].gotoAndPlay("show");
}
// in movieclip slide0 on frame with label "show"
trace("slide0 show begin");
我收到2条消息“slide0 show begin”。但是当我点击menu_item0时,我有一条消息。
请帮忙 - 哪里出错?
答案 0 :(得分:1)
MovieClip(this)["menu_item"+i].addEventListener(MouseEvent.CLICK, menu_item_click);
MovieClip(this)["menu_item"+i].dispatchEvent(new MouseEvent(MouseEvent.CLICK));
您也可以尝试(slides.items.length
)您可以使用的数字。
答案 1 :(得分:0)
嗯,我将dispatchEvent移动到frame3,它运行正常。
// frame3
this["menu_item0"].dispatchEvent(new MouseEvent(MouseEvent.CLICK));
但这种行为的原因尚不清楚......