1

我目前正在使用Kinetic Js和画布开发一个 HTML5 和 Javascript 项目。

我需要我的线条 ( Kinetic.Line) 闪烁。

我已经尝试过由内部带有函数的无限循环组成的东西setTimeout,但是那时我不能使用javascript(这样的缺点,因为那时我无法选择点!)。

有人有可以帮助我的想法吗?

while (1) {
setTimeout("stage.load(myjson[0])", 1000);
setTimeout("stage.load(myjson[1])", 1000);
}

(对不起我糟糕的英语)

4

1 回答 1

2

这是使用 KineticJS 使线条闪烁的一种方法。而不是使用 setTimeout,我认为最好使用内置在舞台对象中的 KineticJS onFrame 事件。然后您可以使用 setAlpha 设置线条的不透明度,并使用 getAlpha 获取线条的当前不透明度。setAlpha('0') 将使线条透明, setAlpha('1') 将使线条可见。

我在这里设置了一个小提琴: JSFiddle

这是实际闪烁该行的相关位:

var flashTime = 0;

stage.onFrame(function(frame){
    if(frame.time > (flashTime + 250)){;
        flashTime = frame.time;
        redLine.setAlpha(redLine.getAlpha() == 1 ? '0' : '1');
        layer.draw();                                
    };                                        
});
于 2012-07-17T11:27:39.913 回答