電話する
window.location.reload(false)
ページを更新する JavaScript メソッドで。この呼び出しの後に追加の JavaScript 呼び出しがあります。追加の JavaScript 呼び出しを呼び出す前に、window.location.reload(false) の実行がいつ完了したかを知る方法はありますか?
電話する
window.location.reload(false)
ページを更新する JavaScript メソッドで。この呼び出しの後に追加の JavaScript 呼び出しがあります。追加の JavaScript 呼び出しを呼び出す前に、window.location.reload(false) の実行がいつ完了したかを知る方法はありますか?
オンロードする関数を提供するだけです。リロードはロードと同じです。
window.onload = function() { // ...
コード行window.location.reload(false)
により、ブラウザは現在のページをリロードします-このステートメントの後にスクリプトは実行されません...。
最初のロードでCookieを設定し、その後のロードでCookieの存在を確認して、アクションを実行することができます...疑似コード:
onload = check cookie
if cookie is present
run function
else
set cookie
reload
Cookieの時刻を確認し、一定期間(たとえば、1時間)が経過した後に関数を実行することを選択できます...。
ハッシュタグを使用して、ページがリロードされたかどうかを示す変数を設定します。あなたはこのようなことをすることができます:
// Get the hash of the page
var hashstring = window.location.hash.substring(1);
var found = false;
// Do a hash exist?
if (hashstring.length > 0)
{
// Split the hash by '&'-sign (in case you have more variables in the hash, as I have)
var a = hashstring.split("&");
// Loop through the values
for (i = 0; i < a.length; i++)
{
// Split the string by '=' (key=value format)
var b = a[i].split("=");
// If the key is 'reloaded' (which tells us if the page is reloaded)
if(b[0] == 'reloaded')
{
found = true;
}
}
}
if(!found)
{
location.hash = 'reloaded=true';
window.location.reload();
}
// Do other stuff, this will only be executed if the page has been reloaded
ハッシュ内の変数を見つけるコードをプロジェクトの別の関数に配置しましたが、簡単にするために、ここに追加しました。これにより、ページがリロードされたかどうかを判断し、リロードされた場合にのみコードを実行できます。