Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 什么';将createjs精灵的实例纠缠在一起?_Html_Animation_Createjs_Easeljs - Fatal编程技术网

Html 什么';将createjs精灵的实例纠缠在一起?

Html 什么';将createjs精灵的实例纠缠在一起?,html,animation,createjs,easeljs,Html,Animation,Createjs,Easeljs,我们正在将动画项目转换为HTML5,它正在转储创建多个精灵类型对象实例的代码。它生成的精灵定义如下: (lib.quarterback = function() { this.spriteSheet = ss["Page12_Canvas_atlas_"]; this.gotoAndStop(11); }).prototype = p = new cjs.Sprite(); // Quarter Back copy 1 this.instance_19 = new lib.qu

我们正在将动画项目转换为HTML5,它正在转储创建多个精灵类型对象实例的代码。它生成的精灵定义如下:

(lib.quarterback = function() {
    this.spriteSheet = ss["Page12_Canvas_atlas_"];
    this.gotoAndStop(11);
}).prototype = p = new cjs.Sprite();
// Quarter Back copy 1
this.instance_19 = new lib.quarterback();
this.instance_19.parent = this;
this.instance_19.setTransform(-16.1,-371.1);
this.instance_19._off = true;

this.timeline.addTween(cjs.Tween.get(this.instance_19) /* snip! */ .to({_off:true},1).wait(51));

// Quarter Back copy 2
this.instance_20 = new lib.quarterback();
this.instance_20.parent = this;
this.instance_20.setTransform(-16.1,-371.1);
this.instance_20._off = true;

this.timeline.addTween(cjs.Tween.get(this.instance_20) /* snip! */ .to({_off:true},1).wait(51));

// Quarter Back copy 3
this.instance_21 = new lib.quarterback();
this.instance_21.parent = this;
this.instance_21.setTransform(-16.1,-371.1);
this.instance_21._off = true;

this.timeline.addTween(cjs.Tween.get(this.instance_21) /* snip! */ .to({_off:true},1).wait(51));

// etc.
而且,那些被多次使用的方法如下:

(lib.quarterback = function() {
    this.spriteSheet = ss["Page12_Canvas_atlas_"];
    this.gotoAndStop(11);
}).prototype = p = new cjs.Sprite();
// Quarter Back copy 1
this.instance_19 = new lib.quarterback();
this.instance_19.parent = this;
this.instance_19.setTransform(-16.1,-371.1);
this.instance_19._off = true;

this.timeline.addTween(cjs.Tween.get(this.instance_19) /* snip! */ .to({_off:true},1).wait(51));

// Quarter Back copy 2
this.instance_20 = new lib.quarterback();
this.instance_20.parent = this;
this.instance_20.setTransform(-16.1,-371.1);
this.instance_20._off = true;

this.timeline.addTween(cjs.Tween.get(this.instance_20) /* snip! */ .to({_off:true},1).wait(51));

// Quarter Back copy 3
this.instance_21 = new lib.quarterback();
this.instance_21.parent = this;
this.instance_21.setTransform(-16.1,-371.1);
this.instance_21._off = true;

this.timeline.addTween(cjs.Tween.get(this.instance_21) /* snip! */ .to({_off:true},1).wait(51));

// etc.
从时间轴上这些实例的开始到示例中被剪断的部分,一切都正常。但是,每个精灵只有一个实例(在本例中为四分卫)在结尾处/附近成功地从时间线中删除。其他人只是“卡在”他们最后的位置上

我们已经证明,这些实例本身是正常的——除去它们中的任何一个都可以显示预期的行为。但是,拥有任何给定精灵的多个实例似乎会阻止它们全部被移除


这是怎么回事

以下示例将在第0帧关闭目标,然后在第1帧重新打开。您可以使用“visible”属性来实现相同的效果

var tween = createjs.Tween.get(target).to({_off:false}).wait(1).to({_off:true}).wait(1).to({_off:false});
在上面的代码中,目标是一个图形,以隐藏/显示我们正在使用_off

甚至我也通过调用函数和隐藏movieclip来解决这个问题

this.timeline.addTween(cjs.Tween.get(this.instance_21).to({_off:true},1).wait(51).call(hideInstance,this));
function hideInstance()
{
this.instance_21.visible =false;
}