0

我在 Flash 中创建了 Accordion。我收到以下错误

TypeError: Error #1010: A term is undefined and has no properties.
at accordionSub_fla::accordionMain_1/mouserOver()

但是,这个错误只反映在 Panel3 上,我有 9 个面板,除了 Panel3 之外,所有面板都工作正常,而且这个 Panel3 不只是打开。下面是函数代码

function mouserOver(e:MouseEvent):void {
var overed:MovieClip = MovieClip(e.target);
for(var i:int=0; i<numChildren; i++)
{
    var mc:MovieClip = MovieClip(getChildAt(i));
    if(mc.props.ind <= overed.props.ind)
    {
        TweenLite.to(mc, 1, {x:mc.props.lx, ease:Expo.easeOut});
        var request:URLRequest = new URLRequest(mc.props.links);
        myTimer.start();
        myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, urlAction);
        function urlAction(evt:TimerEvent)
        {
            navigateToURL(request, 'myFrame');
        }

    }
    else
    {
        TweenLite.to(mc, 1, {x:mc.props.rx, ease:Expo.easeOut});
    }
}}

任何立即响应都会有所帮助。谢谢。

4

2 回答 2

0

numChildren 的价值从何而来?

检查这些行: var mc:MovieClip = MovieClip(getChildAt(i)); 如果(mc.props.ind <= overed.props.ind)

mc 在某些情况下可以为 null,访问其属性将引发错误。

于 2012-07-25T05:20:45.110 回答
0

我得到了答案..代码没有错误。实际上,当我单击按钮时,它会出现错误,并且我将 Panel3 的标题设置为按钮,因此它触发了错误。现在,我把它变成了简单的文本字段,现在问题解决了。

无论如何,谢谢弗兰克

于 2012-07-25T06:43:54.130 回答