Un script pour deux pages

Résolu/Fermé
Evalon Messages postés 66 Date d'inscription mercredi 30 septembre 2015 Statut Membre Dernière intervention 21 juillet 2017 - 16 juil. 2017 à 00:14
Evalon Messages postés 66 Date d'inscription mercredi 30 septembre 2015 Statut Membre Dernière intervention 21 juillet 2017 - 21 juil. 2017 à 10:54
Bonjour à tous,

J'ai un script Javascript qui m'affiche l'heure à deux endroits du globe.

Mais j'ai une page en français et une autre en espagnol ce qui pour le moment m'as obligé a faire un script pour chaque langue car chacune à ses ID spécifique.

Je voudrais les regrouper et ne faire qu'un seul script, mais le problème apparaît car si il ne trouve pas une ID il arrête le script

Je vous montre ça:
/*----------------------------------------------------*/
/*  Affichage de la Date et de l'Heure
------------------------------------------------------*/
           
        function afficher() {
            var jours_fr = ["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"];
            var mois_fr = ["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"];
            var jours_es = ["Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sabado"];
            var mois_es = ["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"];
            var diff_fr = document.getElementById("dif1_fr" ).innerHTML;
            var diff_es = document.getElementById("dif1_es" ).innerHTML   
            var offsetUTC = +2,
            lD = new Date();
            oD = new Date();
            oD.setHours(lD.getUTCHours()+offsetUTC);
            var m=oD.getMinutes();
            var s=oD.getSeconds();
            var diffEnMilliseconde = lD-oD;
            var diffEnHeures = ((lD-oD)/1000)/3600;
       
        if(m <= 9) {m = "0" + m;}
        if(s <= 9) {s = "0" + s;}     
         
          document.getElementById("locale_fr" ).innerHTML = " " + jours_fr[lD.getDay()] +" " + lD.getDate() + " " + mois_fr[lD.getMonth()] +" "+lD.getFullYear() + ", " + lD.getHours() + ":" + m+ ":" + s ;
          document.getElementById("autre_fr" ).innerHTML = " " + jours_fr[oD.getDay()] +" " + oD.getDate() + " " + mois_fr[oD.getMonth()] +" "+oD.getFullYear() + ", " + oD.getHours() + ":" + m+ ":" + s;
          document.getElementById("dif1_fr" ).innerHTML = diffEnHeures ;
          document.getElementById("locale_es" ).innerHTML = " " + jours_es[lD.getDay()] +" " + lD.getDate() + " " + mois_es[lD.getMonth()] +" "+lD.getFullYear() + ", " + lD.getHours() + ":" + m+ ":" + s ;
          document.getElementById("autre_es" ).innerHTML = " " + jours_es[oD.getDay()] +" " + oD.getDate() + " " + mois_es[oD.getMonth()] +" "+oD.getFullYear() + ", " + oD.getHours() + ":" + m+ ":" + s;
          document.getElementById("dif1_es" ).innerHTML = diffEnHeures ;     
          if (
            diff_fr == "0" ) {
            document.getElementById("dif_fr" ).style.display="none";
          }
            else if (
              diff_fr >= "1" ) {
              document.getElementById("dif_fr" ).style.display="block";
          } 
          if (
            diff_es == "0" ) {
            document.getElementById("dif_es" ).style.display="none";
          }
            else if (
              diff_es >= "1" ) {
              document.getElementById("dif_es" ).style.display="block";
          }         
          }
/*----------------------------------------------------*/
/*  Onload
------------------------------------------------------*/     
        window.onload=function() {
          afficher();
          setInterval(afficher,1000);
        }

cela fonctionne sur un https://codepen.io/Aton8181/pen/eRXJbL/?editors=1010 mais pas sur deux pages différentes

J'ai essayé avec des if=nul sans succès

Si quelqu'un avait un tuyau pour me donner une idée ?

Je l'en remercie d'avance
A voir également:

2 réponses

Evalon Messages postés 66 Date d'inscription mercredi 30 septembre 2015 Statut Membre Dernière intervention 21 juillet 2017 3
20 juil. 2017 à 15:49
Personne n'a une petite idée ?
0
Evalon Messages postés 66 Date d'inscription mercredi 30 septembre 2015 Statut Membre Dernière intervention 21 juillet 2017 3
21 juil. 2017 à 10:54
J'ai réussi en faisant ceci

/*----------------------------------------------------*/
/*  Affichage de la Date et de l'Heure
------------------------------------------------------*/
             
        function afficher() {
            var jours_fr = ["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"];
            var mois_fr = ["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"];
            var jours_es = ["Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sabado"];
            var mois_es = ["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"];
			var lang = $('html').attr('lang');
            var offsetUTC = +2,
            lD = new Date();
            oD = new Date();
            oD.setHours(lD.getUTCHours()+offsetUTC);
            var m=oD.getMinutes();
            var s=oD.getSeconds();
            var diffEnMilliseconde = lD-oD;
            var diffEnHeures = ((lD-oD)/1000)/3600;
          
        if(m <= 9) {m = "0" + m;}
        if(s <= 9) {s = "0" + s;}   

		
           if (lang == 'fr') {
            var diff_fr = document.getElementById("dif1_fr").innerHTML;
				  document.getElementById("locale_fr").innerHTML = " " + jours_fr[lD.getDay()] +" " + lD.getDate() + " " + mois_fr[lD.getMonth()] +" "+lD.getFullYear() + ", " + lD.getHours() + ":" + m+ ":" + s ;
				  document.getElementById("autre_fr").innerHTML = " " + jours_fr[oD.getDay()] +" " + oD.getDate() + " " + mois_fr[oD.getMonth()] +" "+oD.getFullYear() + ", " + oD.getHours() + ":" + m+ ":" + s;
				  document.getElementById("dif1_fr").innerHTML = diffEnHeures ;
				            if (
									diff_fr == "0" ) {
									document.getElementById("dif_fr").style.display="none";
								  }
									else if (
									  diff_fr >= "1") {
									  document.getElementById("dif_fr").style.display="block";
							}  
        } else if (lang == 'es') {
            var diff_es = document.getElementById('dif1_es').innerHTML;
				  document.getElementById("locale_es").innerHTML = " " + jours_es[lD.getDay()] +" " + lD.getDate() + " " + mois_es[lD.getMonth()] +" "+lD.getFullYear() + ", " + lD.getHours() + ":" + m+ ":" + s ;
				  document.getElementById("autre_es").innerHTML = " " + jours_es[oD.getDay()] +" " + oD.getDate() + " " + mois_es[oD.getMonth()] +" "+oD.getFullYear() + ", " + oD.getHours() + ":" + m+ ":" + s;
				  document.getElementById("dif1_es").innerHTML = diffEnHeures ;  
				            if (
									diff_es == "0" ) {
									document.getElementById("dif_es").style.display="none";
								  }
									else if (
									  diff_es >= "1") {
									  document.getElementById("dif_es").style.display="block";
								}        
				}       

          }
 
 
/*----------------------------------------------------*/
/*  Onload
------------------------------------------------------*/       
 
        window.onload=function() {
          afficher();
          setInterval(afficher,1000);
        }


/*----------------------------------------------------*/
/*	End
------------------------------------------------------*/
0