Flash 错误#1006:值不是函数

Flash 错误#1006:值不是函数,flash,flash-cs3,Flash,Flash Cs3,//创建URLLOader实例 var myLoader:urloader=newurloader() //数据将作为URL编码的变量提供 myLoader.dataFormat=URLLoaderDataFormat.VARIABLES //使用URL请求加载,甚至是本地加载 load(新的URLRequest(“flash/index.php”)) //onLoad处理程序侦听器 myLoader.addEventListener(Event.COMPLETE,onDataLoad) //为

//创建URLLOader实例
var myLoader:urloader=newurloader()

//数据将作为URL编码的变量提供 myLoader.dataFormat=URLLoaderDataFormat.VARIABLES //使用URL请求加载,甚至是本地加载 load(新的URLRequest(“flash/index.php”)) //onLoad处理程序侦听器 myLoader.addEventListener(Event.COMPLETE,onDataLoad) //为完整事件添加侦听器 函数onDataLoad(evt:事件){
对于(var i:uint=0;i您发布的代码似乎有语法错误,但我认为解决问题的方法应该是调用
e.target.startDrag();
。通过调用
my_thumb.startDrag();
您试图调用
e.target.name
上不存在的函数
startDrag

你也可以换一个

var my_thumb = e.target.name;


你的代码中有很多错误。你还试图用一种方法做太多的事情。你解析数据,创建电影剪辑,添加加载程序,加载图像,然后在加载程序上调用函数……我试图消除明显的错误,但毫无疑问,通过分离关注点,你的代码可以得到改进

如果将代码拆分为单独的方法,代码将更加灵活,也更易于调试……您可以加载和解析变量,在另一个函数中为设计准备XML数据,然后将显示逻辑留给另一个方法

同时,这是您的代码,错误更少

    function onDataLoad(evt:Event)
    {

        for(var i:uint=0; i< evt.target.data.cant; i++)
        {
            var mc_holder:MovieClip = new MovieClip();
            mc_holder.name = "mc_holder"+i;
            mc_holder.x = 30;
            mc_holder.y = mc_holder.height+10;

             //trace(mc_holder.y = mc_holder.height*i);
            addChild(mc_holder);

            var loader:Loader = new Loader();

            loader.load(new URLRequest(evt.target.data["Image"+i]));

            mc_holder.addChild(loader)
            mc_holder.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);

        }
    }

    function mouseDownHandler(e:MouseEvent):void 
    {
        var my_thumb:MovieClip = e.target as MovieClip;
        trace(my_thumb);
        my_thumb.startDrag();

    }  
函数onDataLoad(evt:事件)
{
对于(变量i:uint=0;i
var my_thumb = e.target;
    function onDataLoad(evt:Event)
    {

        for(var i:uint=0; i< evt.target.data.cant; i++)
        {
            var mc_holder:MovieClip = new MovieClip();
            mc_holder.name = "mc_holder"+i;
            mc_holder.x = 30;
            mc_holder.y = mc_holder.height+10;

             //trace(mc_holder.y = mc_holder.height*i);
            addChild(mc_holder);

            var loader:Loader = new Loader();

            loader.load(new URLRequest(evt.target.data["Image"+i]));

            mc_holder.addChild(loader)
            mc_holder.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);

        }
    }

    function mouseDownHandler(e:MouseEvent):void 
    {
        var my_thumb:MovieClip = e.target as MovieClip;
        trace(my_thumb);
        my_thumb.startDrag();

    }