Page 1 sur 1

On Mouse Over automatique

Posté : 08 sept. 2008, 20:25
par Photographiquement Vôtre
Bonsoir,

J'ai une image qui change quand on clique dessus.

J'aimerai faire cela à intervalle régulier.

Comment procéder.

Merci d'avance
<tr>
<td>
<img src="/images/Composite_Mode.jpg " onmouseover="src='/images/Composite_Beaute.jpg';" onmouseout="src='/images/Composite_Mode.jpg'; "width="750" height="500" border="0" >
</td>
</tr>

Posté : 09 sept. 2008, 06:29
par Patriboom
Tu peux reprendre les mêmes commandes dans une fonction sertie entre balises script. Dans cette fonction, tu fait un rappel timeout à la même fonction qui change à nouveau l'image. Cet appel, pour qu'il soit lancé lors du chargement de la page doit aussi apparaître dans la balise <body> sous la commande onload="FonctionChangeant();"

Exemple:

Code : Tout sélectionner

<script> function tourne(){ if (compteur == 5) { compteur = 0; } else { compteur++; } if (ok == 0) document.laroulette.src="images/roue_" + imgrou[compteur] + ".jpg"; if(rapide==1) setTimeout('tourne()', 1500); } </script>

Code ci-haut dans la tête, code ci-bas dans la balise <body>

Code : Tout sélectionner

<body onload="tourne();">

Posté : 12 sept. 2008, 17:57
par Photographiquement Vôtre
Merci

Que dois je mettre à ce niveau :

document.laroulette.src

Et à quoi correspond

if (ok == 0)

if(rapide==1)

Posté : 13 sept. 2008, 00:11
par Patriboom
Il faut remplacer " laroulette" par le nom de l'élément à changer. Dans le cas de l'exemple donné, il s'agissait d'une balise <img src" ..." name="laroulette">

Je m'excuse, j'avais oublié d'enlever les variables de traitement d'autres choses que sont les variables "ok" et rapide"

L'exemple donné était un traitement d'une séquence de 5 images qui pouvaient "tourner" rapidement ou lentement. La variable "ok" permettait de contrôler la "rotation" en la lançant ou l'arrêtant.

Tout cela pour expliquer que vous pouvez bien mettre ce que vous voulez dès le chargement de la page, en appelant simplement une "function" qui s'appellera ensuite elle-même. L'exemple donné traite une séquence d'images, mais vous pouvez faire changer la couleur de fond (voir cet exemple: http://patriboom.cartefoi.net où chaque nom fait changer la couleur du grand A ) ou le message contenu dans la ligne "status".

Posté : 15 nov. 2008, 15:23
par Photographiquement Vôtre
J'ai essayé comme cela mais cela ne marche pas.

Pouvez vous me dire ce qui cloche.

Merci
<?php 
echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n"); 
?> 
<!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>Hervé DUNOYER Photographe de mode Paris. Photographe book mode professionnel en beauté et publicité;. </title>
<meta name="description" content="Photographe de mode paris, création de book pour modèle, book mode, beauté, publicité, photographe professionnel sur paris, photographe de book sur paris. " />
<meta name="keywords" content="photographe de mode paris, photographe de mode, photographe book, photographe lingerie, photographe casting, photographe beauté, photographe modèle, photographe book paris, photographe, mode, paris, book, photo, beauté, lingerie, maillot de bain, bijoux, accessoires, casting, press-book, retouche, studio, modèle, mannequin, comédien " />
<meta name="robots" content="index,follow" />
<meta name="Identifier-URL" content="http://www.hervedunoyer.com" />
<meta name="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="REVISIT-AFTER" content="10 days" />
<meta name="ROBOTS" content="ALL" />
<meta name="classification" content="photographie" />
<meta name="author" content="CQFD Media" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link href="librairie/CSS/style_parti.css" rel="stylesheet" type="text/css" />

<SCRIPT LANGUAGE="javascript">

function tourne(){ 
   if (compteur == 2) { 
      compteur = 0; 
      } 
   else { 
      compteur++; 
      } 
   document.composite.src="images/Composite" + [compteur] + ".jpg"; 
   setTimeout('tourne()', 1500); 
} 

</SCRIPT>

</head>


<body onload="tourne();">

<!-- Debut du Site -->
<div id="site">

<?php

$pageName = "Accueil"; 

include ("./templates/haut.php");

?>

<!-- Debut du Coeur de la Page -->
<div id="coeur">


<div id="introduction">

<h1>HERVE DUNOYER Photographe de mode beauté Paris</h1>

<h2>Photographe de mode portraits beauté lingerie et maillots de bain  sur Paris. Photographe book pour Castings Modèles et Comédiennes.</h2>

<!-- Centre de la Feuille -->
<table   cellspacing="0" cellpadding="0" >
<!-- Photos -->
	<tr>
		<td>
<img name="composite" width="750" height="500" alt=""/>

		</td>
	</tr>	
</table>
    

<!-- Fin de Introduction -->
</div>
<!-- Fin du Coeur de la Page -->
</div>

<?php			

include ("./templates/bas.php");	  
	
?>	

</div>
<!-- Fin du Site -->

</body>
</html>

Posté : 15 nov. 2008, 15:27
par Ryle
Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "Javascript, AJAX".

Posté : 15 nov. 2008, 16:30
par Patriboom
Ton code:

Code : Tout sélectionner

document.composite.src="images/Composite" + [compteur] + ".jpg";
Sans les crochets:

Code : Tout sélectionner

document.composite.src="images/Composite" + compteur + ".jpg";
Sans les crochets, le code appellera les images
images/Composite0.jpg
images/Composite1.jpg
images/Composite2.jpg

Avec les crochets, je ne suis pas sûr du résultat. En fait, je crains que ça ne provoque une erreur.
Les crochets, en javascript comme en PHP servent à identifier un élément d'un tableau.

Code : Tout sélectionner

var banane = array("Premier", "Deuxième", "Troisième");
est donc la même chose que :

Code : Tout sélectionner

banane[0] = "Premier"; banane[1] = "Deuxième"; banane[2] = "Troisième";
Puisque ton code ne comporte pas de variable qui soit définie en tableau pour être appelée comme telle, javascript ne peut rien retourner sinon:

Code : Tout sélectionner

?[0] = ???; //compteur valant 0 ?[1] = ???, //compteur valant 1 ?[2] = ???, //compteur valant 2

Bref, sans être sûr de la théorie, je tenterais ma chance en enlevant les crochets.

Posté : 15 nov. 2008, 17:50
par Photographiquement Vôtre
Cela marche.

Il fallait initialiser le compteur !!!!