Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème de validation w3c

onmouseover fait des siennes

Sujet résolu
    10 janvier 2009 à 19:57:08

    Bonjour à tous, ou plutot bonsoir,

    Voilà, mon site est terminé et je rentre dans la phase de validation.
    Tout se passe bien (autrement dit je comprend les erreurs que j'ai faites), mais lorsqu'arrive une arreur de js, je sèche.

    Synopsis :
    Pour mon menu, j'ai mis des images cliquables qui changent au survol.
    Fonction qui est réalisée avec onmouseover et onmouseout.
    Seulement je suis pas une bête en js et je ne comprend pas où ça coince.

    Trêve de bavardage, voici mon script :
    <a href="*****"><img src="****" name="***" onmouseover="****.src='*****'" onmouseout="****.src='***'" alt="***" title="****" /></a>


    Confronté à la validation je me vois recevoir le message : "there is no attribute "name" . "

    Quelqu'un pourrait il m'aider à comprendre, tout du moins à contourner le problème ?

    Merci à vous.
    • Partager sur Facebook
    • Partager sur Twitter
      10 janvier 2009 à 20:26:53

      Peut tu editer pour que le code qoit coloré comme xhtml.
      Ensuite est tu sur que cela vient de là ?
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        10 janvier 2009 à 20:47:39

        toi l'anglais c'est pas ton truc hien…

        Il te dit «there is no attribute "name" .» en français: «il n'existe pas d'attribut "name" [pour l'élement img]»

        rien a voir avec javascript
        • Partager sur Facebook
        • Partager sur Twitter
          10 janvier 2009 à 21:12:35

          Quelle élégance nod...

          L'anglais ne me pose aucun problème, malgré ce que ta si sympathique réflexion le laisse entendre. La décence m'empêche de te dire ce que j'en pense.

          Bref, comme je l'ai dis, je ne me suis pas encore penché sur le js, j'y connais pas vraiment quelques chose.
          En attendant, le script que j'ai pris donnait les choses suivantes :

          <a href="http://cibledulien.php" ><img src="http://www.monsite.fr/images/bouton/image1.png" name="image1" onmouseover="image1.src='http://www.monsite.fr/images/bouton/image1_on.png'" onmouseout="image1.src='http://www.monsite.fr/images/bouton/image1.png'" class="image_lien" alt="" title="" /></a>
          


          Alors, je sais que l'attribut name n'existe pas, mais le script fonctionne comme cela, je suppose qu'EN JAVASCRIPT cela a son utilité.

          Je cherche conseil auprès de personne s'y connaissant plus que moi en js afin de trouver une solution, parce que je suis sûr que le problème vient de là.
          (Peut etre en remplaçant name par id comme j'ai pu voir sur un forum, mais j'ignore comment m'y prendre, de plus, j'ai tous mes onglets à refaire avec).
          • Partager sur Facebook
          • Partager sur Twitter
            10 janvier 2009 à 21:20:13

            <a href="http://cibledulien.php" ><img src="http://www.monsite.fr/images/bouton/image1.png" name="image1" onmouseover="image1.src='http://www.monsite.fr/images/bouton/image1_on.png'" onmouseout="image1.src='http://www.monsite.fr/images/bouton/image1.png'" class="image_lien" alt="" title="" /></a>
            

            ne peut pas marcher...
            l'élément image1 ne représente rien...
            donc :
            <a href="http://cibledulien.php" ><img src="http://www.monsite.fr/images/bouton/image1.png" name="image1" onmouseover="this.src='http://www.monsite.fr/images/bouton/image1_on.png'" onmouseout="this.src='http://www.monsite.fr/images/bouton/image1.png'" class="image_lien" alt="" title="" /></a>
            

            ensuite, je suis pas sûr que le fait de changer le src d'une image la change... j'utiliserais bien innerHTML moi...
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              10 janvier 2009 à 21:27:09

              Je me suis efforcé d'être à la hauteur de ton script.

              Le problème est tout simple. Je sais pas où tu as trouvé ton script, mais ne va plus les chercher par là bas. celui là repose sur une connerie de IE.

              <img 
                  src="http://www.monsite.fr/images/bouton/image1.png" 
                  onmouseover="this.src='http://www.monsite.fr/images/bouton/image1_on.png';" 
                  onmouseout="this.src='http://www.monsite.fr/images/bouton/image1.png';" 
                  class="image_lien" alt="" title="" />
              
              • Partager sur Facebook
              • Partager sur Twitter
                10 janvier 2009 à 21:32:28

                De ce que j'avais compris, le fait de nommer avec... bin name justement faisait qu'on pouvait l'utiliser avec mouseover et mouseout.

                Bon premièrement, ton code xavier ne change rien à mon menu (bonne nouvelle).
                Ensuite, la page est valide.

                Un grand merci à Xavierm02.

                RESOLU

                Conclusion :
                On est jamais à l'abri de trouver des améliorations de script, même pour des scripts tout fait.

                edit :
                Nod, il n'y a aucun mal à prendre des scripts tout fait, surtout quand on est pas sûr de pouvoir mettre soi-même les mains dans le cambouis.

                Il est simplement assez ... d'associer le script à l'utilisateur (uniquement utilisateur), sous prétexte que tu maitrises le js.
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  10 janvier 2009 à 21:53:32

                  Citation : Norrin

                  edit :
                  Nod, il n'y a aucun mal à prendre des scripts tout fait, surtout quand on est pas sûr de pouvoir mettre soi-même les mains dans le cambouis.


                  J'ai jamais dit que c'était mal. Je te conseil juste de ne plus prendre de scripts de cet endroit au vu de la qualité (excécrable) de celui là. Tout le monde a le droit (et le devoir?) de débuter.


                  Citation : Norrin

                  Il est simplement assez ... d'associer le script à l'utilisateur (uniquement utilisateur), sous prétexte que tu maitrises le js.



                  Dans la localité de ce post, il constitue effectivement ton script (par opposition à mon script), que tu en sois l'auteur ou non (j'fais de la physique, je pense vraiment comme ça).
                  Ensuite du pose mal ton problème. Tu balances du code dans les mauvaises balises, tu mets des *** à tous vas genre c'est top secret. Je suis d'accord que ça ne change rien au problème, ça fait juste «Aider moi, mais je vous fait pas confiance…». Tu nous dis qu'il y a une erreur javascript… laquelle? Et pour finir tu nous parle d'une erreur de validation HTML.

                  Je suis censé faire quoi moi hein ? Bref.


                  Le fin mot de l'histoire c'est que ton script du départ repose sur le fait que IE donne un accès direct a un objet du même nom que son attribut name. Je suppose que ça marchait pas dans firefox?
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Problème de validation w3c

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown