5

基本的に27,000以上のオプションをチェックする必要があるブルートフォースのようなスクリプトを作成し、各チェックの後にdiv内に結果を表示します。

スクリプトは正しくコーディングされており、オプションの数を減らすと十分に機能しますが、オプションが多いと、数秒後に、スクリプトが応答しないことを示すウィンドウがポップアップします。この多くのオプションをチェックしながら、どうすればレスポンシブにできますか。

ああ、私はほとんど忘れていましたが、そのポップアップウィンドウが表示されたときにのみデータ (すべてのチェックの後に表示されます) が表示されます (ちょっと変です)。

4

1 に答える 1

1

非同期バッチ処理で問題が解決する場合があります。

var options = ...; // your code

// I assume you are using something like this
function processAll() {
  for(var i=0; i<options.length; ++i) ... // causes unresponsivity
}

// try to use this instead
function batchProcessing(from) {
  if(from >= options.length) return;
  var to = Math.min(1000, options.length-from);
  for(var i=from; i<from+to; ++i) ... // your code
  // run the next batch asynchronously, let the browser catch the breath
  setTimeout(batchProcessing.bind(null, from+1000));
}
于 2013-05-11T16:54:15.553 に答える