IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

Rafraichissement automatique des pages web (Auto refresh web pages )


Sujet :

HTML

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 247
    Points : 106
    Points
    106
    Par défaut Rafraichissement automatique des pages web (Auto refresh web pages )
    Bonjour,

    Je veux rafraichir automatiquement certaines pages web sans perdre ma position dans la page.

    J'ai trouvé sur le web 2 utilitaires pour rafraichir une page web à partir de son URL ici

    http://www.refreshthis.com et http://www.refreshthing.com/

    Ça fonctionne sauf que je perds ma position dans la page, on recharge la page mais on l'affiche à partir du haut de la page.

    J'ai téléchargé ces 2 pages pour examiner le code dans VS2010 et le code HTML me semble assez simple sauf que je ne suis pas un expert en HTML.

    Donc quelqu'un sait-il quel code ajouter pour garder ma position dans la page ou mieux est-ce que quelqu'un à le code pour faire ce que je viens de décrire ?

    J'ai VS 2010 donc j'ai accès aux extensions pas besoin de code HTML pure.


    Merci à tous

  2. #2
    Membre à l'essai Avatar de WanFoxOne
    Homme Profil pro
    Webmaster
    Inscrit en
    Mai 2017
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2017
    Messages : 9
    Points : 12
    Points
    12
    Par défaut Quelques pistes...
    Bonjour,

    Tout d'abord, je vous déconseille très fortement l'utilisation d'un rafraichissement programmé dans le "head" de votre page HTML, comme dans cet exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <head>
      <meta http-equiv="refresh" content="5">
    </head>
    Certes, c'est fonctionnel, mais c'est une méthode dépréciée. Libre à vous de choisir votre voie.

    ------------------------------------------------------------------------------------

    Il y a divers moyens d'obtenir le résultat voulu, mais dans tout ces cas, des notions en JavaScript seront nécessaires, et l'utilisation de telles où telles méthodes dépendra grandement du contenu que vous souhaitez afficher.


    Voici quelques pistes :

    Le rafraichissement

    - La fonction JavaScript "window.location.reload(true)" : incorporé dans une boucle, c'est, très grossièrement, l'alternative de la meta refresh. La principale différence, c'est le contrôle beaucoup plus aisé des délais, si on doit par exemple les modifier pour X raisons, ou même les annuler. En résumé, la méthode du méta en plus propre.

    - AJAX : je vous conseille de vous pencher sur cette technologie pour rafraichir le contenu de votre page. Elle a cependant une façon de fonctionner complètement différente aux méthodes citées ci-dessus.
    AJAX ne s'occupe pas de "rafraichir" la page comme on l'entend, mais permet de réactualiser avec de nouvelles données une partie seulement de la page souhaitée.


    Le repositionnement

    - Le système d'anchor : purement HTML, cette méthode nécessite une bonne structuration de vos éléments : l'utilisation d'ID est nécessaire au bon fonctionnement du repositionnement. Voici comment le tout fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Votre cible, contenu, bloc de texte, ...
    <div id="texte_lambda">...</div>
     
    // Pour y parvenir
    <a href="#texte_lambda">texte_lambda</a>
    En résumé, le lien ajoute à votre URL le symbole "#" suivi de la cible. Je vous invite à trouver par vous même comment conjuguer cette méthode avec celle du rafraichissement (petite piste : ScrollSpy).


    - Le système de la facilité : en dernier recours, vous avez à disposition cette fonction :
    Je ne m'attarde pas dessus, je vous laisse découvrir par vous même son fonctionnement.


    ------------------------------------------------------------------------------------

    En espérant avoir su vous aiguiller, je vous rappelle cependant que cette liste de méthodes est non exhaustive.

    Bien cordialement,

    WFO

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 247
    Points : 106
    Points
    106
    Par défaut
    Merci WanFoxOne super réponse.

    Pour être sur qu'on se comprenne bien les pages à rafraichir sont des pages que je ne possède pas mais c'est vrai que je pourrais visualiser le code de la page et trouver la section div que je veux mettre en évidence. Ce sont des informations boursières que je veux afficher à intervalles assez courtes et ce sans perdre ma position dans la page. Je vais regarder ça.

    À plus tard.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 247
    Points : 106
    Points
    106
    Par défaut
    Ok, j'ai trouvé la solution parfaite.

    En cherchant pour améliorer le code existant je suis tombé sur ceci http://forums.moneysavingexpert.com/...d.php?t=171901

    C'est un petit script VB qui charge une page web et met à jour la page à tous les x secondes en gardant la position de la barre de défilement ! (scrollbar)

    J'utilise IE 11 j'espère que ça fonctionne aussi avec les autres versions.


    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    'IErefresh.vbs
    'Auto Refresh in Internet Explorer 
    'http://forums.moneysavingexpert.com/showthread.php?t=171901
     
    option explicit
    dim ie, url, refreshSeconds, i
    url = InputBox("Enter web site URL (http:// optional)")
    if url = "" then WScript.Quit
    refreshSeconds = InputBox("Enter refresh interval in seconds",,60)
    if IsEmpty(refreshSeconds) then WScript.Quit
    set ie = WScript.CreateObject("InternetExplorer.Application", "ie_")
    ie.Navigate url
    ie.Visible = true
    do until ie.ReadyState = 4 : WScript.Sleep 100 : loop 
    while true
     i = 0
     while i < CInt(refreshSeconds)
      WScript.Sleep 1000
      i = i + 1
     wend 
     ie.refresh2 3 '3=REFRESH_COMPLETELY
    wend
    sub ie_onQuit
     WScript.Quit
    end sub

    Il suffit de créer un petit fichier vbs disons AutoRefresh.vbs et d'insérer le code avec Notepad. Je vous donne le fichier AutoRefresh.zip

    Avec un petit raccourci sur le bureau vers AutoRefresh.vbs ça devient assez efficace, on peut entrer la valeur de l'url et le temps dans le code en plus.

    Sapristi je ne trouve plus le bouton Résolu ???

    Bye.

Discussions similaires

  1. Rafraichissement automatique des données
    Par medanas dans le forum QlikView
    Réponses: 2
    Dernier message: 14/07/2013, 16h23
  2. auto-refresh web pages
    Par alexisduval29 dans le forum Langage
    Réponses: 3
    Dernier message: 18/02/2012, 19h09
  3. Désactiver le rafraichissement automatique des pages web aspx
    Par Espoirwakal dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 26/11/2011, 12h33
  4. Rafraichissement automatique des snapshots
    Par fatati dans le forum SQL
    Réponses: 3
    Dernier message: 30/10/2008, 14h26
  5. rafraichissement automatique des pages
    Par gloglo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/06/2006, 14h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo