2014-09-28 42 views
0
var HelloWorldLayer = cc.Layer.extend({ 
sprite:null, 
ctor:function(){ 
    var myWorld; 
    this._super(); 
      var winsize = cc.director.getWinSize(); 
    myWorld = new cc.Sprite(res.HelloWorld_png); 
    myWorld.attr({ 
     x: winsize.width/2, 
     y: winsize.height/2, 
     scale: 1, 
     rotation: 180 
    }); 
    this.addChild(myWorld, 0); 
    var centerpos = cc.p(winsize.width/2, winsize.height/2); 
    cc.eventManager.addListener(cc.EventListener.create({ 
     event: cc.EventListener.TOUCH_ALL_AT_ONCE, 
     onTouchesBegan: function(touches, event) { 
      console.log("onTouchesBegan!"); 
      var spritebg; 
      for(var i = 0; i < 10; i++){ 
       spritebg = cc.Sprite.create(res.Hat_png); 
       spritebg.setPosition(
        (Math.floor(Math.random() * 600) + 100), 
        (Math.floor(Math.random() * 600) + 100));    
       //this.addChild(spritebg); 
       myWorld.appendChild(spritebg); 
      } 
     } 
    }), this); 

} 
}); 

无论我做什么,当我点击屏幕时尝试添加子项时,我都会收到同样的错误。我是JavaScript新手,并没有真正懂得这门语言。当我尝试在函数中添加子项时,我得到了同样的错误信息。Javascript uncaught error undefined不是收听者的功能

+1

错误发生在哪条线上? – 2014-09-28 19:55:04

+0

myWorld.appendChild(spritebg); – jking14 2014-09-28 20:08:48

回答

0

看了一下Cocos2D reference for cc.Sprite,看起来Sprite对象上没有方法appendChild。你得到的错误是因为你试图调用一个不存在的方法。

也许你想要myWorld.addChild(spritebg);而不是?

+0

尝试失败。还试过this.addChild(spritebg) – jking14 2014-09-29 21:41:37

相关问题