为什么一点点效果都没

jike_4445052 HTML5 Canvas 应用 最后由 yunkehe 于2016年09月14日回复

  • 3 回答
  • 1.5k 浏览
var canvas;
var stage;
var image = new Image();
var sprite;
window.onload = function () {
    canvas = document.getElementById("canvas");
    stage = new createjs.Stage(canvas);

    stage.addEventListener("stagemousedown",clickCanvas);
    stage.addEventListener("stagemousemove",moveCanvas);
    var data={
      images:["QQ图片20160730193015.jpg"],
    frames:{width:20,height:20,regX:10,regY:10}
    }
    sprite= new createjs.Sprite(new createjs.SpriteSheet(data));
    createjs.Ticker.setFPS(20);
    createjs.Ticker.addEventListener("tick",tick);
}
function tick(e) {
  var t = stage.getNumChildren();
    for(var i = t-1;i>0;i--){
 var s = stage.getChildAt(i);

        s.vY  =2;
        s.vX  =1;
        s.x  = s.vX;
        s.y  = s.vY;

        s.scaleX = s.scaleY =s.scaleX  s.vS;
        s.alpha =s.vA;
        if(s.alpha<=0||s.y>canvas.height){
            stage.removeChildAt(i);
        }
    }
    stage.update(e);
}

function clickCanvas(e) {
addS(Math.random()*200  100,stage.mouseX,stage.mouseY,2);
}
function moveCanvas(e) {
    addS(Math.random()*2  1,stage.mouseX,stage.mouseY,1);
}
function addS(count,x,y,speed) {
    for(var i = 0;i<count;i--){
        var s =sprite.clone();
        s.x = x;
        s.y = y;
        s.alpha = Math.random()*0.5  0.5;  //设置透明度的变化
        s.scaleX = s.scaleY =   Math.random()  0.3;                    //设置缩放的效果
      //设置它的变化的曲线
        var a = Math.PI*2 * Math.random();
        var v = (Math.random() - 0.5)*30*speed;
        s.vX = Math.cos(a)*v;
        s.vY = Math.sin(a)*v;
        s.vS = (Math.random()-0.5)*0.2;//scale的变化
        s.vA = -Math.random()*0.05 - 0.01;//alpha的变化
        stage.addChild(s);
     }

  • yunkehe 2016年09月14日 回答 #3楼
  • 图片的默认当前路径是html文件当前路径。

  • 0 评论