Problème javascript Else If
Résolu
bonjour,
J'ai un petit soucis avec mon code, j'utilise la fonction d.getDay pour essayer de établir un iframe différent selon le jour actuel.
Le problème c'est que a n == 6, la fonction refuse de fonctionner et m'affiche le résultat de n == 3.
Si quelqu'un peu m'aider je ne vois pas ou il y a l'erreur.
J'ai un petit soucis avec mon code, j'utilise la fonction d.getDay pour essayer de établir un iframe différent selon le jour actuel.
Le problème c'est que a n == 6, la fonction refuse de fonctionner et m'affiche le résultat de n == 3.
Si quelqu'un peu m'aider je ne vois pas ou il y a l'erreur.
<script language="javascript">
var d = new Date();
var n = d.getDay();
function pos()
{
if (n == 3) {
iframe = document.createElement ("iframe");
iframe.setAttribute ("src", "http://hello1.fr;
iframe.style.width = 400+"px";
iframe.style.height = 300+"px";
document.body.appendChild(iframe);
}
else if (n == 5 || 4 || 2 || 1 || 0) {
iframe = document.createElement ("iframe");
iframe.setAttribute ("src", "http://hello2.fr");
iframe.style.width = 400+"px";
iframe.style.height = 300+"px";
document.body.appendChild(iframe);
}
else if (n == 6) {
iframe = document.createElement ("iframe");
iframe.setAttribute ("src", "http://hello3.fr");
iframe.style.width = 400+"px";
iframe.style.height = 300+"px";
document.body.appendChild(iframe);
}
}
</script>
2 réponses
-
ModérateurBonjour,
Ton problème se trouve déjà au niveau du :else if (n == 5 || 4 || 2 || 1 || 0) {
..... il faut l'écrire comme ceci :else if (n == 5 || n == 4 || n == 2 || n == 1 || n == 0) {
Maintenant... il serait plus propre (je pense) d'utiliser un SWITCH plutôt que des enchainements de if / else if...
et puis.. certaines parties de ton code n'ont pas besoin d'être "dupliquées" et répétées à chaque fois ...
Par exemple :
var src =""; switch(n){ case 3: src = "http://hello1.fr"; break; case 0: case 4: case 5: case 1: case 2: src = "http://hello2.fr"; break; case 6: src = "http://hello3.fr"; break; } iframe = document.createElement ("iframe"); iframe.setAttribute ("src", src ); iframe.style.width = 400+"px"; iframe.style.height = 300+"px"; document.body.appendChild(iframe);
-
Salut,
il en soit, si la valeur de n n'est ni 0,1,2,3,4,5 c'est quelle est égal a 6 non ? ou autre valeur ?
else {
iframe = document.createElement ("iframe");
iframe.setAttribute ("src", "http://hello3.fr");
iframe.style.width = 400+"px";
iframe.style.height = 300+"px";
document.body.appendChild(iframe);
}
Ou alors
else if (n == 6) { /* ton code*/}
else{ alert("erreur");}
Voila voila