Deux script sur une meme page :s [Résolu]

Signaler
Messages postés
10
Date d'inscription
jeudi 14 décembre 2006
Statut
Membre
Dernière intervention
14 décembre 2006
-
Messages postés
181
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
28 décembre 2006
-
Bonjour a tous


On m’a donné un script qui décompte les heures ( max 24 )
Quand je le met sur une page, pas de souci ca s’affiche.
Mais si je rajoute le meme script dessous pour un deuxieme affichage ( pour deux evenement different ) ca n’affiche plus rien.
Je me doute qu’il va falloir changer le nom de certaines variable et fonctions mais je ne sait pas faire...


Comment faire cohabiter les deux script sur la meme page sans faire appel a des frames ???


Merci de votre aide


Ci joint le script entre <tt><head> et </head></tt> + la ligne a mettre sur la page web apres


entre <tt><head> et </head></tt> :




<tt><script>

var heureCourante = new Date();

heureCourante.setHours(24-heureCourante.getHours());

heureCourante.setMinutes(60-heureCourante.getMinutes());

heureCourante.setSeconds(60-heureCourante.getSeconds());


function AffichageCompteARebours() {

        heureCourante.setSeconds(heureCourante.getSeconds()-1);

        document.getElementById("CompteARebours").innerHTML =
heureCourante.getHours() + " h " + heureCourante.getMinutes() + " mn "
+ heureCourante.getSeconds() + " sec ";

}


window.onload = function () { setInterval(AffichageCompteARebours,1000); }

</script></tt>


PUIS la ligne a mettre a l’endroit de son choix dans la page web :




<tt>

</tt>



Merci encore

13 réponses

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
13
REBOULETTE
trop pressé d"aller bosser...

function AffichageCompteARebours(){
 var Html="";
 H_1.setSeconds(H_1.getSeconds()-1);
 H_2.setSeconds(H_2.getSeconds()-1);

en fait on faisait appel à une variable H qui n'esiste pas H !!!!!!!!!!!!!


;0)
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
13
B
onjour...
avec ton script cela peut donner ceci



<script type="text/javascript">
var H = new Date();
H.setHours  (24-H.getHours());
H.setMinutes(60-H.getMinutes());
H.setSeconds(60-H.getSeconds());

function AffichageCompteARebours(){
 var Html="";
 H.setSeconds(H.getSeconds()-1);
 Html = H.getHours() + " h " + H.getMinutes() + " mn " + H.getSeconds() + " sec ";
 document.getElementById("Rebours_1").innerHTML = Html;
 document.getElementById("Rebours_2").innerHTML = Html;
}
window.onload = function () { setInterval(AffichageCompteARebours,1000); }
</script>









<tt>


</tt>






<tt>
...et plus loin dans la page...


</tt>










;0)
Messages postés
10
Date d'inscription
jeudi 14 décembre 2006
Statut
Membre
Dernière intervention
14 décembre 2006

Merci pour cette optimisation

En effet  l'heure s'affiche deux fois sans conflit.

Mais j'ai la meme heure pour les deux compte a rebours

Je voudrai en fait des comptes a rebours different sur la meme page du style :

15h12mn06s avant tel evenement

plus bas sur la page :

8h46mn27s avant le deuxieme evenement

etc... autant de fois que je le voudrai

est ce possible ??

Merci encore de votre patience :)
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
13
Il suffit de faire tourner deux variables Date différentes


<script type="text/javascript">
var H_1 = new Date();
var H_2 = new Date();
//-- Initialsation H_1
H_1.setHours  (24-H.getHours());
H_1.setMinutes(60-H.getMinutes());
H_1.setSeconds(60-H.getSeconds());
//-- Initialsation H_2
H_2.setHours  (24-H.getHours());
H_2.setMinutes(60-H.getMinutes());
H_2.setSeconds(60-H.getSeconds());

function AffichageCompteARebours(){
 var Html="";
 H_1.setSeconds(H.getSeconds()-1);
 H_2.setSeconds(H.getSeconds()-1);

 Html = H_1.getHours() + " h " + H_1.getMinutes() + " mn " + H_1.getSeconds() + " sec ";
 document.getElementById("Rebours_1").innerHTML = Html;

 Html = H_2.getHours() + " h " + H_2.getMinutes() + " mn " + H_2.getSeconds() + " sec ";
 document.getElementById("Rebours_2").innerHTML = Html;
}
window.onload = function () { setInterval(AffichageCompteARebours,1000); }
</script>




par exemple...



;0)
Messages postés
10
Date d'inscription
jeudi 14 décembre 2006
Statut
Membre
Dernière intervention
14 décembre 2006

Merci encore :)

bah apparement ca fonctione plus maintenant , il est vrai que j'ai de tres faible base en prog donc j arrive a peine a changer certaines données... lol

ca ne marche ni sous IE6 ni sous firefox 2.0

voici la page en question, avec tes indications de codes :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans nom</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script type="text/javascript">
var H_1 = new Date();
var H_2 = new Date();
//-- Initialsation H_1
H_1.setHours  (24-H.getHours());
H_1.setMinutes(60-H.getMinutes());
H_1.setSeconds(60-H.getSeconds());
//-- Initialsation H_2
H_2.setHours  (24-H.getHours());
H_2.setMinutes(60-H.getMinutes());
H_2.setSeconds(60-H.getSeconds());

function AffichageCompteARebours(){
 var Html="";
 H_1.setSeconds(H.getSeconds()-1);
 H_2.setSeconds(H.getSeconds()-1);

 Html = H_1.getHours() + " h " + H_1.getMinutes() + " mn " + H_1.getSeconds() + " sec ";
 document.getElementById("Rebours_1").innerHTML = Html;

 Html = H_2.getHours() + " h " + H_2.getMinutes() + " mn " + H_2.getSeconds() + " sec ";
 document.getElementById("Rebours_2").innerHTML = Html;
}
window.onload = function () { setInterval(AffichageCompteARebours,1000); }
</script>

</head>

evenement 1

evenement 2

</html>

plus rien ne s'affiche.
Il n'y aurai pas de conflit avec window.onload ??
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
13
OULA ! 
grosse boulette...

//-- Initialsation H_1

H_1.setHours  (24-H_1.getHours());
H_1.setMinutes(60-H_1.getMinutes());
H_1.setSeconds(60-H_1.getSeconds());
//-- Initialsation H_2
H_2.setHours  (24-H_2.getHours());
H_2.setMinutes(60-H_2.getMinutes());
H_2.setSeconds(60-H_2.getSeconds());



;0)
Messages postés
10
Date d'inscription
jeudi 14 décembre 2006
Statut
Membre
Dernière intervention
14 décembre 2006

heu en fait ca ne marche toujours pas, j'ai du mal a voir la difference entre les deux script ... :)
Messages postés
10
Date d'inscription
jeudi 14 décembre 2006
Statut
Membre
Dernière intervention
14 décembre 2006

Geant !!!

Ca marche a la perfection !!!

Merci encore de ton temps

Te souhaitant une excellente journée :)
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
13
OK
je part au boulot rassuré...



;0)
Messages postés
10
Date d'inscription
jeudi 14 décembre 2006
Statut
Membre
Dernière intervention
14 décembre 2006

;) Merci encore
Messages postés
181
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
28 décembre 2006

Bonjour.
A l'occasion ce script pouvant m'être utile, je l'ai testé en tenant compte des modifs qui lui on été apportées et j'obtiens deux fois le même décompte ?
Si vous pouvez m'éclairer un peu, merci. voilà la page entière de ce script ci-dessous.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans nom</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">


<script type="text/javascript">
var H_1 = new Date();
var H_2 = new Date();
//-- Initialsation H_1
H_1.setHours  (24-H_1.getHours());
H_1.setMinutes(60-H_1.getMinutes());
H_1.setSeconds(60-H_1.getSeconds());
//-- Initialsation H_2
H_2.setHours  (24-H_2.getHours());
H_2.setMinutes(60-H_2.getMinutes());
H_2.setSeconds(60-H_2.getSeconds());


function AffichageCompteARebours(){
 var Html="";
 H_1.setSeconds(H_1.getSeconds()-1);
 H_2.setSeconds(H_2.getSeconds()-1);


 Html = H_1.getHours() + " h " + H_1.getMinutes() + " mn " + H_1.getSeconds() + " sec ";
 document.getElementById("Rebours_1").innerHTML = Html;


 Html = H_2.getHours() + " h " + H_2.getMinutes() + " mn " + H_2.getSeconds() + " sec ";
 document.getElementById("Rebours_2").innerHTML = Html;
}
window.onload = function () { setInterval(AffichageCompteARebours,1000); }
</script> 


</head>



 evenement 1

 evenement 2



</html>
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
13
B
onjour...
Il est normal que tu obtiennes le même décompte les deux compte à rebours étant initialisé en même temps et avec les mêmes valeurs lorsque la page ce lance...

//-- Initialisation H_1
H_1.setHours  (24-H_1.getHours());
H_1.setMinutes(60-H_1.getMinutes());
H_1.setSeconds(60-H_1.getSeconds());
//-- Initialisation H_2
H_2.setHours  (24-H_2.getHours());
H_2.setMinutes(60-H_2.getMinutes());
H_2.setSeconds(60-H_2.getSeconds());

c'est la partie ci dessus qui doit être reprise.
;0)
Messages postés
181
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
28 décembre 2006

Excusez-moi, mais je pense qu'une âme charitable devrait m'expliquer dans le détail comment on utilise ce script.
Selon ce que je peux comprendre, lorsque je lancerais la page qui contient ce script à chaque fois et quelque soit le nombre de décomptes que j'y programmerais LES décomptes commenceront en même temps.

Quelqu'un pourra-t-il expliquer clairement à la personne âgée que je suis devenue et dont le décompte des neuronnes à commencé le jour de sa naissance, comment fait-on pour associer un décompte à un évennement et un autre décompte à un autre évennement, tout ça sur la même page, ou pas d'ailleurs ?
C'est pour moi un profond mystère, pourtant je sens confusément que la réponse va me faire honte.
Je me rend de ce pas sur ebay pour voir si qq. n'aurait pas quelques neuronnes à vendre.

Merci à tous et bonnes fêtes.