.load()
for ループを使用してさまざまなページをロードし、その情報の一部を に保存する Greasemonkey スクリプトを作成しようとしていますlocalStorage
。私の問題:.load()
非同期であるため、うまく機能しません。私のスクリプトは、保存しようとしている Last 値を保存するだけです。var i
これは、コールバック関数内で使用しているためだと思います。コールバック関数が起動されると、i
すでに別の値があります。
for (var i = 0; i < plantsDiv.length; i++)
{
objectid = plantsDiv[i].getAttribute('objectid');
$("#wrap").load("index.php?objectid="+ objectid,function(){
//[...] what is happening
window.localStorage.setItem(objectid,value);
});
}
alert("foo")
コールバック関数と for ループの最後の間に挿入すると.load
、アラート ウィンドウで [OK] をクリックしている間に関数が読み込まれるため、すべてが機能します。.load
全体が実行されるまで for ループを待機させる方法はありますか?
助けてくれてありがとう、そして私の悪い英語でごめんなさい:)