【问题标题】:Changing an items index in an array更改数组中的项目索引
【发布时间】:2014-08-25 10:43:31
【问题描述】:

我目前将一张图片切成矩形,然后放在另一张图片上,这样我就可以在后面显示图片(图 1)。我目前有从左到右和从上到下的动画形状(图 2)。我希望图像以随机方式进行动画处理(图 3)。最初我创建了一个位置数组,我将其值打乱了创建我想要的效果但显然也打乱了图像切片。所以现在我正在创建一个索引数组并改组这些值。我想用洗牌索引数组中的新值交换切片图像索引。拼接没有达到预期的效果。

 for(i=0;i<100;i++){

    var _s = new createjs.Sprite(this._ss);
        _s.gotoAndStop(i);

    this._container.addChild(_s);

    if((i % 10)===0){
        _ypos += 21;
        _xpos = 34;
    };
    _s.x = _xpos;
    _s.y = _ypos;
    _xpos += 34;

    this._indexArray.push(i);
    this._shapeArr.push(_s);
}

this.shuffleArray(this._indexArray);

for(j=0;j<100;j++){

    this._shapeArr[j]//CHANGE INDEX HERE
}

【问题讨论】:

    标签: javascript createjs sprite-sheet


    【解决方案1】:

    对于其他试图做类似事情的人来说,第二个 for 循环中的修改后的代码。我找到了这个链接,它帮助我解决了这个问题,所以检查一下链接,如果你觉得它有帮助,那就给那个人 +1

    Move an array element from one array position to another

     for(j=0;j<100;j++){
    
        //CHANGED CHILD INDEX HERE
        this._shapeArr.splice(this._indexArray[j],0,this._shapeArr.splice(j,1)[0]);
     }  
    

    【讨论】:

      猜你喜欢
      • 2013-12-06
      • 2021-06-28
      • 2016-12-12
      • 2015-06-12
      • 2014-01-30
      • 2021-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多