11548 sujets

JavaScript, DOM et API Web HTML5

Bonsoir,
je suis nouveau et débutant, certaines de mes questions pourront vous sembler candides... merci d'avance de votre tolérance.

Je suis en train de créer un site, j'ai écrit une petite fonction en javascript qui ouvre une image qui s'agrandit progressivement lorsque l'on clique sur un lien.
Si le lien est directement dans le "body" ça marche nickel. Si le lien est dans une box, la fonction ne fonctionne pas... ????
J'ai écumé google et les archives de divers forums et je ne trouve pas de réponse.
Merci à ceux qui auront une idée qui peut m'aider à avancer.

A+
Philippe
Modifié par Florent V. (19 Jan 2010 - 13:54)
Bonjour,

Nos voyant extra-lucides étants tous en cure de repos, nous sommes dans l'incapacité de visualiser le problème.

Il nous faudrait du code, ou mieux, une page en ligne reproduisant le bug.
Je suppose que ta fonction JavaScript comprend une étape où tu repère tous les liens de la page, avant de leur appliquer un traitement (en l'occurrence, leur associer un gestionnaire d'évènement). D'après ton descriptif, le problème concerne cette étape: la fonction repère uniquement les liens qui sont enfants de l'élément body.

Pour la suite, sans voir la page et/ou le code, difficile d'en dire plus.
Bonjour à tous et toutes mes excuses pour l'imprécision de ma question.

En reprenant mon code afin de vous produire un exemple (la page d'origine est trop grosse et n'est pas encore en ligne) j'ai trouvé mon erreur (bête erreur de syntaxe Smiley confused )

Je vous met le code de mon exemple, est-il possible d'ouvrir l'image dans le bloc de droite (bloc "presentation") en la centrant (dois-je inclure la balise IMG dans le DIV de la seconde boite ??)


<html>
<head>
<style>

.boite{
float:left;
height: 100px;
width:100px;
border: solid 1px;
}


.presentation{
float:left;
height: 100px;
width:200px;
border: solid 1px;
}

</style>
<SCRIPT LANGUAGE=JavaScript>
function ouvre()
{ 
     
     if(document.getElementById)
      {
        hautimage -=5;
        gaucheimage -=8;
        haut +=10;
        larg +=16;
        document.getElementById("smile").style.top = hautimage;
        document.getElementById("smile").style.left = gaucheimage;
        document.getElementById("smile").style.height = haut;
        document.getElementById("smile").style.width = larg;

        if (larg < 150)
         {setTimeout('ouvre()', 10);}
        }}


</SCRIPT>


</head>

<body>

<SCRIPT LANGUAGE="javascript">
var hautimage = 200;
var gaucheimage =200 ;
var haut = 10;
var larg = 10;

document.write('<IMG SRC="NGUYEN.jpg"  height=0;  width=0;  ID=smile STYLE="position:absolute;top:'+hautimage+';left:'+gaucheimage+'">');
</SCRIPT>




<div class="boite"><a href=# onclick="ouvre();">Ouvrir image</a></div>
<div class="presentation"></div>

<a href=# onclick="ouvre();">Ouvrir image</a>

</body>
</html>



Merci de votre patience,

A+
Philippe