Javascript:使用效果队列减少脚本闪烁?

Javascript:使用效果队列减少脚本闪烁?,javascript,prototypejs,scriptaculous,Javascript,Prototypejs,Scriptaculous,我只是使用Prototype和Scriptaculous组合了一些简单的Javascript。这很简单:只是淡出一个用户报价,切换到另一个,然后淡入。问题是Scriptaculous的衰落有点不稳定。我猜这是因为淡出、切换、淡入发生得太快,浏览器很难跟上 起初我以为暂停会有用,但现在我读到你可以用它来解决这个问题,但就我而言,我无法让它工作 以下是没有任何影响的原始问题代码: function fadeOut() { new Effect.Opacity('quoteContainer', {f

我只是使用Prototype和Scriptaculous组合了一些简单的Javascript。这很简单:只是淡出一个用户报价,切换到另一个,然后淡入。问题是Scriptaculous的衰落有点不稳定。我猜这是因为淡出、切换、淡入发生得太快,浏览器很难跟上

起初我以为暂停会有用,但现在我读到你可以用它来解决这个问题,但就我而言,我无法让它工作

以下是没有任何影响的原始问题代码:

function fadeOut() {
new Effect.Opacity('quoteContainer', {from: 1.0, to: 0.0 });
}

function fadeIn() {
new Effect.Opacity('quoteContainer', {from: 0.0, to: 1.0 });
}

function changeQuote(i) {
    fadeOut();
    $('quote').innerHTML = quoteArray[i];
    $('name').innerHTML = nameArray[i];
    fadeIn();
}

changeQuote(0); // 1stQuo

window.onload = function () {
    var i = 1;
    var pause = setInterval(function () {
        changeQuote(i);
        i++;
        if (i>11) { i=0; } // Go to first quote in array
    }, 7000);
}
当然,除非有人对如何减少闪烁有更好的想法

setTimeout(function () {
   fadeIn();
}, 500); 

以毫秒为单位的时间是500毫秒

这真的把事情搞砸了,我恐怕:(发现了一个叫做效果队列的东西。显然Scriptaculous同时运行所有效果,你需要告诉它等待。