可以用谷歌打开,因为作者就做了谷歌内核的兼容~
主要思想是 6边形 有6个面可以通过旋转来实现展示不同的面~同时由于延迟时间的不同就会实现以上效果~
回复播放一次就不动了
播放一次就不动了是因为作者就做了一次播放,没加循环的原因。
想要支持循环播放代码要做几处改动:
1) 计时器timer没必要定义成一个数组,用一次清一次即可
timer = [] -> timer = null
改了这个变量后,当然清除计时器的函数也要跟着改动
function stop() { each(timer, function(el, i) { clearTimeout(timer[i]); }); } //-> function stop() { if (timer) clearTimeout(timer); }
2) 修改播放函数,支持循环:
function play(n, int) { for (var i = 0; i < n; i++) { delaySlide(i, int); } }
->//play函数做了改动后,delaySlide就没用了,可以删除
function play(n, int) { var calleeFn = arguments.callee stop(); var time = int; if (i != 0) time = int + 1000; timer = setTimeout(function() { if (i >= n) { //只循环一次就在此调用stop();清除掉计时器即可 //stop(); i = 0; } else { i++; } next(-1); calleeFn(n, int); }, time); }