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

JavaScript Discussion :

Rafraîchir une image toute les seconde avec préchargement.


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Points : 45
    Points
    45
    Par défaut Rafraîchir une image toute les seconde avec préchargement.
    Bonsoir à tous !

    J'ai une WebCam branché en permanence sur mon vivarium avec ma tarentule...
    Et un petit programme maison en python, qui prend une image toute les seconde, et l'envoi sur mon site... temp.jpg

    Sur un page HTML il y a une image.
    Cette image est rafraichie toute les secondes par du Javascript.

    Voici mon code :
    Code : 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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    	<title>---</title>
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
    	<img src='./Cam/temp.jpg' id='imageCam' />
     
    	<script type="text/javascript">
    		<!--
    			var imageCam = document.getElementById('imageCam').src;
    			setInterval(rafraichirCam, 1000);
     
    			function rafraichirCam()
    			{
    				document.getElementById('imageCam').src = imageCam + "?" + Math.random(1);
    			}
    		//-->
    	</script>
    </body>
    </html>
    Mon problème est que les images peuvent parfois être un peu lourde, et je ne voudrais pas les voir se charger ; un peu comme certaine caméra de surveillance image après image.

    J'ai cherché, et j'ai trouvé des bouts de code...
    Mais je n'arrive pas à les adapter !

    Est-il possible de faire ça ?
    Quelqu'un à une idée ?

    Merci d'avance !
    Bonne fin de nuit.

  2. #2
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    l'idée ce serait peut-être que tu surveilles les paramètres height et width; du coup, quand la taille de l'image en cours correspond à ça, elle est chargée et entièrement visible;
    après, il faut que tu choisisses entre la rapidité du diapo (en théorie, 1 par seconde) et l'affichage propre (forcément beaucoup plus lent);
    guette le chargement de l'image 2 et quand c'est ok, mets son src à la place de l'image 1, etc.

    Bref, plutôt qu'un direct, tu vas avoir une provision d'images que l'utilisateur pourra si possible activer les unes après les autres;


    c'est rigolo ça, un python pour surveiller une tarentule

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Points : 45
    Points
    45
    Par défaut
    Ok, merci à toi javatwister !

    J'ai bidouillé un peu, et ça me semble potable, ça ne charge pas trop :
    Code : 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
    26
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    	<title>---</title>
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
    	<img src="./cam.jpg" id="imageCam" />
    	<script type="text/javascript">
    		<!--
    			setInterval(rafraichirCam, 500);
     
    			function rafraichirCam()
    			{
    				var imageCam = new Image();
    				imageCam.src = "./cam.jpg";
     
    				imageCam.onload = function()
    				{	
    					document.getElementById("imageCam").src = imageCam.src + "?" + Math.random(1);
    				}
    			}
    		//-->
    	</script>
    </body>
    </html>
    Et oui, un Python qui surveille une tarentule !

    Merci encore !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SDL 1.2] Afficher une image toutes les X secondes ?
    Par Odawin dans le forum SDL
    Réponses: 19
    Dernier message: 06/06/2013, 08h42
  2. Afficher une image toutes les 5 secondes
    Par Bois990 dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 30/03/2012, 08h57
  3. Changer une image toutes les x secondes
    Par ApocKalipsS dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/02/2010, 17h02
  4. Afficher une image toutes les 20 secondes
    Par sab_etudianteBTS dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/02/2008, 18h27
  5. modifier une image toutes les X secondes
    Par didine44 dans le forum GTK+ avec C & C++
    Réponses: 4
    Dernier message: 01/02/2007, 17h09

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