web-dev-qa-db-fra.com

Actualiser une page en utilisant JavaScript ou HTML

Comment puis-je actualiser une page en utilisant JavaScript ou HTML?

208
Prabakaran

window.location.reload(); en JavaScript

<meta http-equiv="refresh" content="1"> en HTML (où 1 = 1 seconde).

263
Reid

Voici 535 façons de recharger une page en utilisant javascript, très cool:

Voici les 20 premiers:

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)

et les 10 derniers:

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']()

Article original

211
epoch

simplement utiliser ..

location.reload(true/false);

Si la valeur est false, la page sera rechargée à partir du cache, sinon du serveur.

66
Wolv3rine
window.location.reload()

devrait fonctionner cependant il y a beaucoup d'options différentes comme:

window.location.href=window.location.href
10
Mike Lewis

Vous pouvez aussi utiliser

<input type="button" value = "Refresh" onclick="history.go(0)" />

Ça fonctionne bien pour moi.

7
Mandeep Singh

Utilisation:

window.location.reload();
3
Rob

S'il y a quelque chose à faire pour contrôler les mises à jour sur les pages en cache, j'ai ici une méthode agréable pour le faire.

  • ajoutez du javascript à la page qui obtient toujours le numéro de version de la page sous forme de chaîne (ajax) lors du chargement. par exemple: www.yoursite.com/page/about?getVer=1&__[date]
  • Comparez-le au numéro de version stocké (stocké dans un cookie ou dans un stockage local) si l'utilisateur a déjà visité la page, sinon enregistrez-le directement.
  • Si version n'est pas identique à la version locale, actualisez la page à l'aide de window.location.reload (true).
  • Vous verrez toutes les modifications apportées sur la page.

Cette méthode nécessite au moins une demande même lorsqu'aucune demande n'est nécessaire car elle existe déjà dans le cache du navigateur local. Mais la surcharge est moins comparable à l'absence de cache (pour être sûr que la page affichera le bon contenu mis à jour). Cela nécessite seulement quelques octets pour chaque demande de page au lieu de tout le contenu de chaque page.

IMPORTANT: La demande d'informations de version doit être implémentée sur votre serveur, sinon la page entière sera renvoyée.

Exemple de chaîne de version renvoyée par www.yoursite.com/page/about?getVer=1&__[date]: skg2pl-v8kqb

Pour vous donner un exemple en code, voici une partie de ma bibliothèque (je ne pense pas que vous puissiez l'utiliser, mais peut-être que cela vous donne une idée de la façon de le faire):

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 );
};

Si vous utilisez des ressources indépendantes de la version, telles que des fichiers javascript ou css, ajoutez des numéros de version (implémentés avec une réécriture d'URL et non avec une requête car ils ne seront généralement pas mis en cache). Par exemple: www.votresite.com/ver-01/about.js

Pour moi, cette méthode fonctionne très bien, peut-être qu’elle peut aussi vous aider.

2
Codebeat