Salve a tutti... vi esponbo subito il mio dilemma O.o':
per esercizio vorrei creare una funzione che dato un nodo, lo scansioni per intero e restituisca un array ove le componenti pari sono le foglie, mentre le componenti dispari contengano il testo di tali nodi...
Il tutto sembra abbastanza banale, se non per il fatto che quando richiamo la funzione per la ricorsione non viene passato il figlio, ma bensi il padre... innescandosi cosi il loop =/
qualcuno mi sa dire dove sbaglio??
ho scritto questa funzione :
Codice PHP:
<div id="gibba">
[b]aaaaaaaaa[/b]bbbbbbbb[b]ccccc[/b]</p></div>
alert(test(document.getElementById("gibba")));
Codice PHP:
function test( node , list )
{
if ( list == null )
{
list = new Array()
}
if ( node.childNodes.length != 0 )
{
for ( cnt = 0 ; cnt < node.childNodes.length ; cnt++ )
{
list = test( node.childNodes[cnt], list )
}
}
else
{
list = list.push( node )
list = list.push( node.nodeValue )
}
return list
}