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 :

[DOM] Script qui ne semble pas fonctionner sous IE 6 et 7


Sujet :

JavaScript

  1. #1
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut [DOM] Script qui ne semble pas fonctionner sous IE 6 et 7
    Salut

    Je suis perplexe quand à l'execution de ma script. Celui ci semble fonctionner parfaitement sous FF, Opéra et Netscape, mais pas sous IE6 et 7. Je n'ai pourtant aucun message d'erreur

    Voilà le script :
    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
    27
    28
    29
    30
    31
    <div style="text-align:center; height:160px"><script type="text/javascript">
    	var nbimage= 30;
    	var width;
    	var height;
    	var url;
    	var alte;
    	numimage= Math.round(Math.random()*(nbimage-1)+1);
    	if (numimage <= 10) {
    		gotosite = "index.asp";
    		url = "images/visuel01.gif";
    		alte = "Magnificat";
    	}
    	if ((numimage > 10) && (numimage <= 20)) {
    		gotosite = "index.asp";
    		url = "images/visuel02.gif";
    		alte = "Magnificat";
    	}
    	if (numimage > 20) {
    		gotosite = "index.asp";
    		url = "images/visuel03.gif";
    		alte = "Magnificat";
    	}
    	if(gotosite != ""){
    		document.write('<a href="' + gotosite + '" ">');	
    	}
    	document.write('<img src="' + url + '" alt="' + alte + '" border="0">');
    	if(gotosite != "") {
    		document.write('</a>');
    	}
    	</script><noscript><a href="index.asp"><img src="images/visuel01.gif" alt="Magnificat" border=0></a></noscript>
    </div>
    Et la page : http://www.magnificat.com/english/abo1.asp

    L'image doit apparaitre en haut du menu à gauche.

    Une idée ?

  2. #2
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 650
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 650
    Points : 11 142
    Points
    11 142
    Par défaut
    bonjour Oluha,

    utilise les fonctions du DOM et appelle la fonction après le chargement de la page
    Code html : 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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    <html>
    <head>
    <title></title>
    <script type="text/javascript">
    <!--
    function chargeMagnificat()
    {
        var monDiv = document.getElementById("monDiv");
     
     
            var nbimage= 30;
            var width;
            var height;
            var url;
            var alte;
            numimage= Math.round(Math.random()*(nbimage-1)+1);
     
            if (numimage <= 10) {
                    gotosite = "index.asp";
                    url = "mes images/i1.gif";
                    alte = "Magnificat";
            }
            if ((numimage > 10) && (numimage <= 20)) {
                    gotosite = "index.asp";
                    url = "mes images/i2.gif";
                    alte = "Magnificat";
            }
            if (numimage > 20) {
                    gotosite = "index.asp";
                    url = "mes images/i3.gif";
                    alte = "Magnificat";
            }
     
     
        var monLien = null;
        if (gotosite!="")
        {
         monLien = document.createElement("a"); //creation d une balise a
         monLien.href = gotosite;
         monDiv.appendChild(monLien); //ajout du lien dans le div
        }
     
        var monImage = document.createElement("img"); //creation de l image
        monImage.src = url; 
        monImage.alt = alte;
        monImage.style.border="none";
     
        if (monLien!=null)   // si le lien existe on donne a ce noeud le noeud enfant image
           monLien.appendChild(monImage)  
        else
           monDiv.appendChild(monImage); //si le lien n existe pas, on ajoute l image dans le div
    }
    //-->
    </script>
     
    </head>
     
    <body onload="chargeMagnificat()">
     
    <div id="monDiv" style="text-align:center; height:160px">
     
     
    </div>
     
    </body>
     
    </html>
    J'ai remplacé les document.write par createElement()

  3. #3
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    en fait ca m'emmerde un peu d'utiliser une fonction à mettre dans les balises head, pour la simple et bonne raison que j'ai pas envie de modifier sur toutes mes pages (le menu est en fait une template ASP)

    Sinon je vais tester avec CreateElement

    EDIT : là ca marche maintenant (sans passer par une fonction), merci beaucoup

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

Discussions similaires

  1. [PDO] pdo_4d.so qui ne semble pas fonctionner
    Par Simvetanylen dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 27/07/2010, 10h42
  2. [PHP 5.0] Fonction IF qui ne semble pas fonctionner
    Par amerex dans le forum Langage
    Réponses: 3
    Dernier message: 10/01/2010, 21h44
  3. Réponses: 6
    Dernier message: 06/01/2010, 11h25
  4. [DOM] Fonction JS ne voulant pas fonctionner sous IE
    Par The Climber dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 01/10/2008, 12h45
  5. [PDO] et bindValue qui ne semble pas fonctionner
    Par Tommyl dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 31/10/2006, 16h12

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