JavaScript または HTML を使用してページを更新するにはどうすればよいですか?
8 に答える
window.location.reload();
JavaScript で
<meta http-equiv="refresh" content="1">
HTML で (ここで1
= 1 秒)。
JavaScript を使用してページをリロードする 535 通りの方法があります。
最初の 20 個は次のとおりです。
location = location
location = location.href
location = window.location
location = self.location
location = window.location.href
location = self.location.href
location = location['href']
location = window['location']
location = window['location'].href
location = window['location']['href']
location = window.location['href']
location = self['location']
location = self['location'].href
location = self['location']['href']
location = self.location['href']
location.assign(location)
location.replace(location)
window.location.assign(location)
window.location.replace(location)
self.location.assign(location)
そして最後の10:
self['location']['replace'](self.location['href'])
location.reload()
location['reload']()
window.location.reload()
window['location'].reload()
window.location['reload']()
window['location']['reload']()
self.location.reload()
self['location'].reload()
self.location['reload']()
self['location']['reload']()
単に使用..
location.reload(true/false);
false の場合、ページはキャッシュからリロードされ、それ以外の場合はサーバーからリロードされます。
window.location.reload()
動作するはずですが、次のようなさまざまなオプションがあります。
window.location.href=window.location.href
使用することもできます
<input type="button" value = "Refresh" onclick="history.go(0)" />
それは私にとってはうまくいきます。
使用する:
window.location.reload();
ここでキャッシュされたページの更新を制御する必要がある場合、これを行うための優れた方法があります。
- ロード時に常にページのバージョン番号を文字列 (ajax) として取得する JavaScript をページに追加します。例えば:
www.yoursite.com/page/about?getVer=1&__[date]
- ユーザーが一度ページにアクセスしたことがある場合は、保存されているバージョン番号 (Cookie または localStorage に保存されている) と比較し、それ以外の場合は直接保存します。
- バージョンがローカル バージョンと同じでない場合は、window.location.reload(true) を使用してページを更新します。
- ページに加えられた変更が表示されます。
このメソッドは、ローカル ブラウザーのキャッシュに既に存在するため、要求が必要ない場合でも、少なくとも 1 つの要求を必要とします。ただし、キャッシュをまったく使用しない場合に比べて、オーバーヘッドは少なくなります (ページに適切な更新コンテンツが表示されるようにするため)。これにより、各ページのすべてのコンテンツではなく、ページ要求ごとに数バイトしか必要ありません。
重要: バージョン情報リクエストをサーバーに実装する必要があります。そうしないと、ページ全体が返されます。
によって返されるバージョン文字列の例www.yoursite.com/page/about?getVer=1&__[date]
: skg2pl-v8kqb
コードの例を示すために、ここに私のライブラリの一部を示します (これを使用できるとは思いませんが、その方法についていくつかのアイデアが得られるかもしれません)。
o.gCheckDocVersion = function() // Because of the hard caching method, check document for changes with ajax
{
var sUrl = o.getQuerylessUrl(window.location.href),
sDocVer = o.gGetData( sUrl, false );
o.ajaxRequest({ url:sUrl+'?getVer=1&'+o.uniqueId(), cache:0, dataType:'text' },
function(sVer)
{
if( typeof sVer == 'string' && sVer.length )
{
var bReload = (( typeof sDocVer == 'string' ) && sDocVer != sVer );
if( bReload || !sDocVer )
{
o.gSetData( sUrl, sVer );
sDocVer = o.gGetData( sUrl, false );
if( bReload && ( typeof sDocVer != 'string' || sDocVer != sVer ))
{ bReload = false; }
}
if( bReload )
{ // Hard refresh page contents
window.location.reload(true); }
}
}, false, false );
};
JavaScript や css ファイルなどのバージョンに依存しないリソースを使用している場合は、バージョン番号を追加します (これらはほとんどキャッシュされないため、クエリではなく URL の書き換えで実装されます)。例: www.yoursite.com/ver-01/about.js
私にとって、この方法はうまく機能しています。おそらくあなたにも役立つでしょう。