ajouter des noeuds dans le DOM avec JavaScript!!

ajouter des noeuds dans le DOM avec JavaScript!! - Programmation

Marsh Posté le 25-05-2002 à 14:15:49    

Salut
 
Je ne vois pas pourquoi ça marche pas ce code:
html=window.moniframe.document.documentElement;
 
baliseTD2=html.firstChild.nextSibling.firstChild.f
irstChild.firstChild.firstChild.nextSibling;
baliseA=baliseTD2.firstChild;
 
//creation d'un paragraphe
nxtexte=document.createTextNode("mon paragraphe" );
nxparagraphe=document.createElement("P" );
nxparagraphe.appendChild(nxtexte);
 
baliseA.appendChild(nxparagraphe)

JE devrais donc rajouter un paragraphe à l'interieur de ma balise A et bien non!!
Pourtatn quand je fais baliseA.nodeName j'obtiens A...
des idées!!

Reply

Marsh Posté le 25-05-2002 à 14:15:49   

Reply

Marsh Posté le 25-05-2002 à 14:31:30    

:??:
 
marche chez moi :
 
 <a id='myLink' href='#'>lien</a>
 
 <script>
  var n1 = document.createTextNode("Hello" );
  var n2 = document.createElement("p" );
  n2.appendChild(n1);
   
  document.getElementById('myLink';).ap
pendChild(n2);  
 </script>

Reply

Marsh Posté le 25-05-2002 à 14:46:45    

oui moi aussi quand j'utilise un getElmentById cela fonctionne...
 
Mais moi ici je peux pas utiliser de ID (car je maitrise pas le contennu de mon iframe!)
 
En fait mon probleme c'est que dans ma balise A j'ai un onclick et je voudrais recuperer le texte que contion le onclick=window.open('mon adresse','','';)
Mais a priori c'est pas un  noeud text ni un attribu...
 
Ce que je voulais faire c'est rajouter un element paragraphe et copier dedans le noeud (de la balise A) ainsi je pense pouvoir recuperer ce contenu (qui est un noeud text avec node.Value)....
 
Mais je n'y arrive pas!!
 
Vois tu une autre façon de faire???

Reply

Marsh Posté le 25-05-2002 à 15:23:33    

>> Mais moi ici je peux pas utiliser de ID (car je maitrise pas le contennu de mon iframe!)  
 
problème de permissions entre frames peut-être ... j'ai jamais vraiment compris comment ça marchait :D
 
>> Mais a priori c'est pas un  noeud text ni un attribu...  
 
c'est ta node.onclick. ça se présente sous la forme d'une string :
 
"function anonymous() { window.open(...) }"
 
>> Vois tu une autre façon de faire???  
 
non.

Reply

Marsh Posté le 25-05-2002 à 16:06:58    

non pas de probleme de permission, c'est un serveur qui m'envoie le contenu du iframe...et c'est pas moi qui m'occupe de ça.
 
je comprend pas trop le rapport avec ta  fonction "anonymous"..
 
il y a rien sur google sur une methode ou propiete node.onclick!!!

Reply

Marsh Posté le 25-05-2002 à 16:16:28    

>> non pas de probleme de permission, c'est un serveur qui m'envoie le contenu du iframe...et c'est pas moi qui m'occupe de ça.
 
montre ton code dans son contexte (où est l'iframe, comment tu interagis avec elle, etc.)
 
>> je comprend pas trop le rapport avec ta  fonction "anonymous"..
 
ai-je bien compris la question ?
 
<a id='myLink' onclick="alert('hello';)">....</a>
 
<script>
  alert(myLink.onclick);
</script>
 
affiche :
 
function anonymous()
{
  alert('hello';);
}

Reply

Marsh Posté le 25-05-2002 à 16:28:28    

ahhhh!!
ok terrible ton truc :bounce:
 
Bon ça y est ce marche!!....
Donc je vais faire un petit traitement pour recuperer mon adresse...et ça devrait rouler!!
 
Alors je vais te passer mon code complet car j'ai un truc tres bizzare (ca marche mais je suis tomber par harsard dessus)
voci le code de la page qui contient le iframe:
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<BODY>
<iframe src="mapage.htm" name="moniframe" id="iFR" width="300" height="300">
</iframe>
<P> </P>
<SCRIPT LANGUAGE=javascript>
<!--
alert(window.moniframe.location.href);
html=window.moniframe.document.documentElement;
baliseTD2=html.firstChild.nextSibling.firstChild.f
irstChild.firstChild.firstChild.nextSibling;
baliseA=baliseTD2.firstChild;
 
//creation d'un paragraphe
nxtexte=document.createTextNode("mon paragraphe" );
nxparagraphe=document.createElement("P" );
nxparagraphe.appendChild(nxtexte);
 
alert(baliseA.onclick);
 
 
//-->
</SCRIPT>
 
</BODY>
</HTML>

 
cf post suivant......

Reply

Marsh Posté le 25-05-2002 à 16:29:05    

voici ce que contient le src de mon iframe :

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<BODY>
<Table border="1" >
<tr><td><a href="un.htm" target="_blanck"><img src="1.jpg"></a></td>
<td><a  onclick="window.open('ici.htm','','';);" href="deux.htm"><img src="2.jpg"></a>
</td></tr></table>
<P> </P>
 
</BODY>
</HTML>

Reply

Marsh Posté le 25-05-2002 à 16:30:42    

tu remarqueras que j'ai alert dans la page appelant le iframe (precisement dans le script!)
alert(window.moniframe.location.href);
 
Ce que je comprend c'est ce qui si je vire cette alert....et bien le code marche plus (tout ce qui suit j'ai un erreur objet requis!!)
trés bizzare non!!

Reply

Marsh Posté le 25-05-2002 à 16:41:45    

non c'est "normal", ie ne te permet d'accéder à une iframe seulement après le chargement de la page. vu qu'on n'a pas les sources de ie :D, je ne sais pas pourquoi cette restriction existe. en attendant, tu peux mettre ton code dans une fonction et l'appeler au chargement de la page :
 
<body onload="maCuisine()">
 
<iframe ...>
 
<script>
  function maCuisine()
  {
    // tu ranges ton code ici.
  }
</script>
...

Reply

Marsh Posté le 25-05-2002 à 16:41:45   

Reply

Marsh Posté le 25-05-2002 à 16:56:31    

bon ben terrible j'ai ma chaine de caractère contenant mes evenement onclick et window.open....le tout dans un fonction...
 
Aller je t'embete encore un peu...
As tu site sympa sur la gestion du dom en JavaScript...parce que celui de crosoft il est bien mais a condition que tu saches ce que tu cherches...
J'ai bien un livre mais jamais il parle du object.event qui te renvoie la fonction anonymous...

Reply

Marsh Posté le 25-05-2002 à 16:59:20    

>> As tu site sympa sur la gestion du dom en JavaScript
 
à part la spec du w3, non. j'ai appris sur le tas (mater ce qui se fait sur le web) et en essayant pas mal de trucs ...

Reply

Marsh Posté le 25-05-2002 à 17:02:43    

oui les spec faudra que j'aille faire un tour un jour...
mais je peur que ce soit imbuvable leur trucs...
 
Bon je te souhaite un bonne fin de journée...
 
Ca me rassure de voir que je suis pas le seul à bosser le SAMEDI :)  
 
@+

Reply

Sujets relatifs:

Leave a Replay

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