style.left et style.top pour div ajouté en js

style.left et style.top pour div ajouté en js - HTML/CSS - Programmation

Marsh Posté le 09-10-2007 à 15:53:15    

Yop !
Voila, j'ai un ptit souci (on s'en doutais...).
 
J'suis en train de faire une ptite appli en php/css/js, et a un moment donné, j'ai besoin de rajouter un div dynamiquement.
J'ai donc un ptit script js qui me rajoute un <div id="blabla" onclick="dnd(this)">TEST</div> dans l'innerHTML d'un autre div.
Et j'ai aussi un ptit script de dragn drop tout bete qui doit fonctionner sur blabla.
Ce dernier utilise les propriétés style.left et style.top de l'objet en question.
 
Seulement voila, j'ai testé le script sur un fichier a part, ou le div a dragndrop et écrit en dur, là pas de pbm.
En revanche, sur le div rajouté par JS en innerHTML j'ai pas de propriété style.left et top, donc le dnd ne fonctionne pas...
 
C'est normal ? Ya un moyen d'y remédier ?

Reply

Marsh Posté le 09-10-2007 à 15:53:15   

Reply

Marsh Posté le 09-10-2007 à 15:56:39    

normal !!!
 
Ce n'est pas parce que tu écrit 'onclick="dnd(this)"' dans l'innerHTML que ton evenement est effectivement hooké pour celui-ci.
 
Plutot que de faire un tonDiv.innerHTML = ..., essaye plutot quelque chose dans le genre:

Code :
  1. var blabla = document.createElement('div');
  2. blabla.innerHTML = 'TEST';
  3. document.getElementById('divContainer').appendChild(blabla);
  4. blabla.onclick = function (){
  5.   dnd(this);
  6. }


ou un truc dans le genre.

Reply

Marsh Posté le 09-10-2007 à 16:44:10    

Ah ouais putain t'es balèze toi !

Reply

Marsh Posté le 10-10-2007 à 01:36:01    

bon j'ai tout fait comme dit ci-dessus, le div s'ajoute correctement, et puis au moins c'est clean, mais tj pas de propriété style.left et top...

Reply

Marsh Posté le 10-10-2007 à 01:38:43    

bon ben en fait il semblerait que ces propriétés doivent être spécifiées pour exister...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed