var touchedSprite = cc.Sprite.extend({ _touchBegan : null, onEnter : function(){ this.initWithFile('res/CloseNormal.png'); //綁定事件監聽 cc.registerTargetedDelegate(0, true, this); this.setAnchorPoint(0.5, 0.5); this._touchEnabled=true; this._super(); }, touchRect:function(){ return this.getBoundingBoxToWorld(); }, onTouchBegan : function(touches, event){ var rect = this.touchRect(); var point = touches.getLocation(); if(cc.rectContainsPoint(rect, point)){ cc.log('touch began'); this.clickAction(); this._touchBegan = true; } return true; }, onTouchEnded : function(touches, event){ if(this._touchBegan){ this._touchBegan = false; cc.log('touch end') } }, onTouchMoved : function(touches, event){ this.setPosition(touches.getLocation()); }, clickAction : function(){ var big = cc.ScaleTo.create(0.5, 2, 2); var small = cc.ScaleTo.create(0.5, 1, 1); var actionArray = new Array(big, small); var seq = cc.Sequence.create(actionArray); this.runAction(cc.RepeatForever.create(seq)); } });