jQuery で問題が発生しました。私は素晴らしい Rhinoslider を自分のニーズに合わせて変更しています。間隔時間がスライダーの効果にバインドされていない場合、基本的にうまく機能するプログレスバーを設定したいと思います。しかし、まさにそのステップが私を悩ませています。
効果が完了するたびに(10秒ごとに)プログレスバー機能を実行したい。
//run effect
if(effects[settings.effect] == undefined){
console.log('Preparations for ' + settings.effect + ' not found.');
}else{
//rerun progressbar
var progressBar = $('#progress-bar');
var barTime = settings.showTime;
var barEasing = 'linear';
function runProgress2(){
progressBar.width(0);
progressBar.animate({'width': "+=100%"}, barTime, barEasing);
};
runProgress2();
//do the effect
effects[settings.effect]($slider, params, resetElements);
}
関数全体を出力した直後に runProgress() を呼び出したことがわかります。私の理解では、ブラウザが機能を実行し、効果[設定...]の処理を続行します。しかし、そうではありません。単に機能しなくなります。ブラウザはスライド効果を持たず、プログレスバーは 100% 幅で表示され続けます。完全なシャットダウン...ブラウザが実行を続けるために、どのようにそのコードにステートメントを入れることができますか? 前もって感謝します :-)