Newsgroup: it.comp.lang.javascript
Titolo: innerHTML

Se innerHTML  non e' rispettoso delle prescrizioni w3, quale sarebbe
per i normatori il modo corretto di scrivere dinamicamente in un
elemento div ?
e' piu' una curiosita' che altro, visto che anche nn6  lo supporta
e spero che venga accettato alla fin fine.
ciao
<OT>
Atipower e Riccardo, se non sbaglio le vostre zone hanno avuto
entrambe gravi problemi col maltempo, nessun danno spero
</OT>

 </OT>
Grazie del pensiero, č... commovente ;-)
Nel mio caso direi nulla di piů di quello che hai visto nei TG nazionali, salvo 
una tempesta di 8 ore ieri dalle 19 in poi, dalle parti di Fabiano invece č 
andata peggio, come mi ha confermato per telefono.
E comunque oggi da me sembrava di essere in primavera.
Piů di 26 gradi, sole splendente, cielo blu e senza vento!
... per dirla con una frase fatta: "non ci sono piů le mezze stagioni" :-)
<SCHERZO>
O avevi paura che non potessimo intervenire nel NG? :-))))
------------------------------------------------------------- </SCHERZO>
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
------------------------------------------------------------------------
               Nessun traguardo č abbastanza lontano.
------------------------------------------------------------------------

andata peggio, come mi ha confermato per telefono.
auguri allora di una pronta ripresa a Fabiano e a tutti coloro che si
sono trovati in difficoltà

 uomo di poca fede... ;-)
Di fede ne ho avuta fin troppa, e l'ho difeso finché ho potuto.
Fin quando non mi ha perso completamente il contenuto di alcune cartelle di 
posta importate dal vecchio NN4.7 (guarda caso proprio la cartella in cui ci 
sono i mex dello Staff di JsDir e la newsletter di Punto Informatico), e, 
sopratutto, appena mi sono accorto che MANCA COMPLETAMENTE LA GESTIONE DELLE 
FIRME DIGITALI E DEI CERTIFICATI DI SICUREZZA!!!!!
Aspetterň la 7.0... o la 8.0... che delusione :-(


 que viva innerHTML
E' tutto fattibile sia per IE5 che NN6 ......ho appena inviato un tutorial
completo in merito all'argomento  a Riccardo che lo pubblicherà al più
presto........
Ho provato le varie proprietà e metodi sulla creazione , rimozione ,
rilevamento , sostituzione e modifica sia di tag che di testo
e quelle funzionanti , con relativi esempi , sono nel tutorial......
Queste invece non sono riuscito a farle funxionare per entrambi....tu hai
qualche notizia??
Te le elenco.....
applyElement()
attributes[]
clearAttributes()
contains()
getAttributeNode()
item[]
mergeAttributes()
name
namedItem
normalize()
removeAttributeNode()
removeNode()
replaceNode()
setAttributeNode()
swapNode()
value
andreotta fabiano
WebMªster ATI POWER s.n.c.
andr...@atipower.it
http://www.atipower.it
http://www.aticommerce.com
http://www.afdsoftware.freeweb.org
http://www.jsdir.com
http://www.javascript.3000.it


wrote:

mi dispiace io sono ben indietro, ma una cosa ho rilevato e forse
potrebbe riverberarsi nelle tue prove:
scornandomi con il riconoscimento di una tabella e individuando i
childNodes mi e' saltata agli occhi
[leggi:  ci ho messo un' enormità a capire]
 una curiosa differenza di comportamento (che forse e' un bug NN6):
 in una normale tabella formattata in codice Html con a capo e
indentazioni,
NN6 riconosce gli spazi tra i tag come testo e quindi la sequenza di
childNodes non è omogenea tra i due browser:NN6 vede dei nodi tipo
text dove IE non li vede, scompaginando l'intera struttura logica
esempio nella seguente pagina di un tutorial
http://webreference.internet.com/js/column40/tablescript.html
NN6 non lancia l' alert presente, perchè rileva un errore (un
childNodes privo di proprieta')
qui sotto ho  preso un pezzetto della pagina in url sopra e accorciato
lo script  (aggiungendo pero' il document.getE[etc]
che nello script originale mancava,  partendo con il semplice ID e
causando un errore di mancata definizione in NN6 (IE ok)
(comportamento questo che potrebbe forse non essere considerato un
errore ma la solita attenzione alla precisione stileNN)
tornando ai child, in:
 <TABLE ID="tableNode">
       <TBODY>
         <TR ID="tr1Node"><TD BGCOLOR="yellow">This is row 1, cell
1</TD><TD BGCOLOR="orange">This is row 1, cell 2</TD></TR>
         <TR ID="tr2Node"><TD BGCOLOR="red">This is row 2, cell
1</TD><TD BGCOLOR="magenta">This is row 2, cell 2</TD></TR>
         <TR ID="tr3Node"><TD BGCOLOR="lightgreen">This is row 3, cell
1</TD><TD BGCOLOR="beige">This is row 3, cell 2</TD></TR>
       </TBODY>
     </TABLE>
<SCRIPT LANGUAGE="JavaScript">
alert(
        "tableNode.firstChild.childNodes[1].nodeName = " +
document.getElementById('tableNode').firstChild.childNodes[1].nodeName);
</script>
per NN6  il firstChild e' di tipo text (dei semplici spazi) quindi non
trova il childNodes[1] 
 [nota:  non e' il <tbody> privo di ID ma gli spazi precedenti il tag
] solo se li elimino l' alert si attiva essendo la struttura
riconosciuta in modo omogeneo con IE)
guarda se nelle tue prove NN riconosce dei child di tipo testo assenti
in IE mandando a carte e quarantotto la struttura che ti aspetteresti.
Scusa la lunghezza e la scarsa attinenza alla tua domanda

Scusa la lunghezza e la scarsa attinenza alla tua domanda
in realta' non sono gli spazi ma le new line nel codice (non i <BR> ma
proprio gli a capo che si digitano nel codice) ad essere riconosciuti
come text node.
E questa è una esplicita scelta degli sviluppatori anche se marcata
come soggetta a revisione proprio per il motivo della presenza
eventuale di new line tra tag che comunque non prevedono la presenza
di testo:
 esempio dopo un </td> e prima di un </tr> non ci deve essere testo ma
nella configurazione attuale il browser riconosce un text node se nel
codice si va a capo...
Comunque mi pare di capire che individuare i childNodes[con numero]
ha elevatissime probabilita' di non essere crossbrowser di nuovo.
Anche se venisse eliminata la "sensitività" delle new lines tra tag
che non rlevano alla formattazione del testo, il problema rimane se
questa è laprima riga
e
questa la seconda
da' luogo a diversità di interpretazione circa il numero di nodes di
tipo text presenti : uno tre o addirittura cinque? mah!


Fai questa prova.........
prendi il codice che hai scritto  e racchiudilo in una funzione che richiami
con onLoad........
sorpresa! :-))))))
andreotta fabiano
WebMŞster ATI POWER s.n.c.


 questa la seconda
Prova questo........
<html>
<head>
<title>test</title>
<script LANGUAGE="JavaScript">
function ver(){
aa=document.getElementById('p1').childNodes[0].nodeValue;
alert(aa)
}
</script>
</head>
<body onLoad="ver()">
<p ID="p1">Prova
è
una prova </p>
</body>
</html>
andreotta fabiano
WebMªster ATI POWER s.n.c.


 presto........
E' andato on-line non più di mezz'ora fa 
http://www.jspoint.it/tutorials
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
------------------------------------------------------------------------
               Nessun traguardo è abbastanza lontano.
------------------------------------------------------------------------

sorpresa! :-))))))
no nessuna.
E' una prova che avevo gia' fatto proprio pensando che il browser non
avesse ancora creato gli oggetti ma  continuava e continua  a
segnalarmi l' errore (con la formattazione non unilineare della
tabella)
prova questo i due browser ti dicono la stessa cosa?
<HTML>
<HEAD>
<TITLE> Simple DOM Demo </TITLE>
</HEAD>
<BODY ID="bodyNode"onload=bubub()>
     <TABLE ID="tableNode">
	<TBODY><TR ID="tr1Node"><TD BGCOLOR="yellow">This is row 1,
cell 1</TD>
	<TD BGCOLOR="orange">This is row 1, cell 2</TD>
	</TR>
         <TR ID="tr2Node"><TD BGCOLOR="red">This is row 2, cell
1</TD><TD BGCOLOR="magenta">This is row 2, cell 2</TD></TR>
         <TR ID="tr3Node"><TD BGCOLOR="lightgreen">This is row 3, cell
1</TD><TD BGCOLOR="beige">This is row 3, cell 2</TD></TR>
       </TBODY>
     </TABLE>
<SCRIPT LANGUAGE="JavaScript">function bubub(){
alert(
        "per me il primo node in tabella e'  " +
document.getElementById('tableNode').firstChild.nodeName)}
</SCRIPT>
</BODY>
</HTML>

</html>
buffo, 
NN6 scrive l' alert su tre righe come se vedesse  due  \n
IE tutto su una


L'ho scaricato (NN6) perchè mi incuriosiva la cosa........
Sì  IE 5.5 e NN6 rispondono  uguale......
per me il primo nodo in tabella è TBODY......


per me il primo nodo in tabella č TBODY......
NN6 a me dice (l' alert)
per me il primo nodo in tabella č  #text 
e torna a dire tbody solo se gli tolgo l' andata a capo.
la mia versione 
Mozilla/5.0 (Windows; U; Win98; en-US; m18) Gecko/20001108
Netscape6/6.0 e' la stessa?
e mi si e' installata male
o sta gia' migliorando passin passetto? boh.


wrote:
solo un'altra prova e poi mi taccio fino al prossimo scaricamento di
una copia un po' piu' avanzata di NN6
a me la pagina seguente con i due browser da' due risposte diverse:
per IE 
ci sono 2 childNodes  (come ci si aspetta direi)
mentre per la mia versione di NN6
4
(direi i due <p> + le 2 fantomatiche  andate a capo prima dei
paragrafi)
e se voglio un bel 5 in NN basta andare a capo prima di </body>...
immagino che a te rispondano  entrambi "2"
<html>
<head>
<title>test</title>
<script LANGUAGE="JavaScript">
function ver(){
aa=document.getElementById('p1').parentNode.childNodes.length
alert(aa)
}
</script>
</head>
<body onLoad="ver()">
<p ID="p1">Prova
è
una prova </p>
<p>io sono il secondo ma per fare un dispetto a
p.ca...@toglimitiscalinet.it
 dico che sono il 4</p></body>
</html>
basta son depresso, manco i test mi vengono

 e mi si e' installata male
Non riesco a capire.........quella a casa è la stessa versione di questa in
ufficio ........ma sorpresa!......questa mi risponde come a te!!.........
Mozilla/5.0 (Windows; U; Win98; en-US; m18) Gecko/20001108 Netscape6/6.0
andreotta fabiano



I metodi sostituzione , creazione etc...e le proprietà  funzionano
correttamente....cmq il riconoscimento corretto dei nodi è quello che ho
messo nel tutorial di jsdir.......
L'unico neo è questo casino che fa Netscape PR4
P.S. prova a fare questa verifica.che dovrebbe essere il body come secondo
figlio di html in PR4........
aa=document.childNodes[0].childNodes[1].nodeName
alert(aa)
e vedi cosa ti dice!!


Cmq una soluzione si riesce a trovare .....basta non addentrarsi troppo nei
sottoNodi.......se vedi gli script che ho postato
nel thread "select collegate"  qualche post sotto, nel primo che ho postato,
per NN6 alcuni nodi non venivano riconosciuti
vedi la modifica che ho fatto nel secondo script.........è bastato assegnare
un ID al form e poche altra modifiche.....


e vedi cosa ti dice!
il caro vecchio #text ma per il motivo che ho  espresso sopra
adesso
con questo script
<script LANGUAGE="JavaScript">function ver(){aa="";for
(i=0;i<document.childNodes[0].childNodes.length;i++){aa+=document.childNodes[0].childNodes[i].nodeName+
"  "};alert(aa)}</script>  //tutto su una riga per indurre in
tentazione NN...
modificando la catena di childNodes[quellochetiserve] almeno mi faccio
dire da NN cosa vede con i suoi occhietti strabici...
Domanda
Si riesce a farsi dire l'id associato se presente ai vari nodeName
un bel nodeId o getID non c'è vero?
Ciao

Mozilla/5.0 (Windows; U; Win98; en-US; m18) Gecko/20001108 Netscape6/6.0
la stessa quindi, mah,
[però malignamente mi sento meglio ;-) ]

Ciao
sono una povera bestiola 
childNodes[i].id

 dire da NN cosa vede con i suoi occhietti strabici...
buona idea......serve sicuramente....
visto che già sei nel "pantano" insieme a me.........ci sono questi metodi e
proprietà che  che sono supportati da entrambi i browser ma che non sono
riuscito( mi stò rinco..** etc probabilmente) a far funzionare......
specified      aa.specified        //--se aa ha un valore dovrebbe
restituire true altrimenti false--
splitText()        aa.splitText(dove)         //--dovrebbe dividere il testo
al numero di carattere indicato da "dove" ( es...3) --
il primo non ho provato tanto.......ma il secondo non ho capito come
recupera il testo diviso....cioè
come lo utilizziamo???


specified l'ho capito............ma per splitText() passo la palla a te
:-)))))))))))))))
<html>
<head>
<script language="javascript">
function ver(){
aa=document.getElementById('form').childNodes[0].attributes['align'].specifi
ed
alert(aa)
}
</script>
</head>
<body onLoad="ver()">
<form method="POST" id="form" >
 <p align="center"><input type="text" id="testo" name="T1" size="20"
value="12" ></p>
</form>
</body>
</html>
andreotta fabiano
 WebMŞster ATI POWER s.n.c.



pero' che squadra ;-)
Mah, smanettando  smanettando qualcosa si comincia a capire
sono riuscito a far qualcosa solo dicendo al browser che il contenuto
del paragrafo era un text
(tra l' altro questo spiegherebbe la scelta di Netscape sulle new line
i childnodes di tipo text sarebero li' belli fatti se non
pastrocchiassero col codice [se solo la dominassero bene...
e secondo me ci sono (vedi l' alert su tre righe) solo che hanno
deciso di non farceli piu' vedere dimenticandosene pero' qua' e la'
])
credo che si debba fare riconoscere qualcosa come text
cioe' creare un nodo testo da poter manipolare perche' in origine non
mi pare che il contenuto di un paragrafo sia riconosciuto come text,
spero di sbagliarmi e di essere da te corretto
<html>
<head>
<title>test</title>
<script language="javascript">
function prova(){
aa=
document.createTextNode(document.getElementById('p1').childNodes[0].nodeValue)
bb=aa.splitText(3).nodeValue
setTimeout('document.getElementById("p1").childNodes[0].nodeValue=bb',1000)
}
</script>
</head>
<body onLoad="prova()">
p.carena
<p ID="p1">non<BR>
è
testardo </p>
</body>
</html>


Forse non ho capito bene cosa intendi......ma in origine il nodo viene
riconosciuto come testo.......(vedi esempio) con nodeType=3 che corrisponde
al testo
Per quanto riguarda splitText()  ....ok!
<html>
<head>
<title>test</title>
<script language="javascript">
function prova(){
aa=document.getElementById('p1').childNodes[0].nodeType
alert(aa)
}
</script>
</head>
<body onLoad="prova()">
<p>p.carena </p>
<p ID="p1">non<br>
è testardo </p>
</body>
</html>
andreotta fabiano
 WebMªster ATI POWER s.n.c.



la funzione diventa piu' semplicemente
<html>
<head>
<title>test</title>
<script language="javascript">
function prova(){
aa= document.getElementById('p1').childNodes[0]
bb=aa.splitText(3).nodeValue
setTimeout('document.getElementById("p1").childNodes[0].nodeValue=bb',1000)
}
</script>
</head>
atipower
<body onLoad="prova()">
<p ID="p1">non<BR>
č piu' sveglio
di p.carena</p>
</body>
</html>
perņ' se uno volesse la prima parte? vecchie regular?

 wrote:
 però' se uno volesse la prima parte? vecchie regular?
mi leggi nel pensiero??
è quello che stò cercando di fare da un'ora........non lo butterà nel cesso
no??
Poi ce ne sono un'altro paio di metodi divertenti  da provare ...appena li
trovo....


normalize()     dovrebbe fare l'opposto di splitText()   non sono riuscito a
farlo funxiare con IE...
cmq ho trovato la parte mancante di  splitText()  vedi esempio....la parte
che rimane diventa un nuovo nodo (nextSibling) quindi la parte prima del
testo è il nodo.stesso......
<html>
<head>
<title>test</title>
<script language="javascript">
function prova(){
aa= document.getElementById('p1').childNodes[0]
alert(aa.nodeValue)
bb=aa.splitText(3).nodeValue
cc=aa.nodeValue
alert(cc)
document.getElementById("p1").childNodes[0].nodeValue=bb
}
</script>
</head>
<body onLoad="prova()">
<p>atipower </p>
<p ID="p1">nonlosose<br>
è piu' sveglio di p.carena</p>
</body>
</html>
andreotta fabiano


testo è il nodo.stesso......
Stiamo pestandoci i piedi... stavo facendo le stesse considerazioni
Pero' stranamente se torno un passo indietro e torno al mio script
precedente
e creo un node text stranamente (almeno per me)
non si crea nessun nodo testo aggiuntivo
ergo non ho ancora capito un axident
<html>
<head>
<title>test</title>
<script language="javascript">
function ver(){
aa=""
for (i=0;i<document.getElementById('p1').childNodes.length;i++)
{aa+=document.getElementById('p1').childNodes[i].nodeName+ "  "}
alert(aa)
}
function prova(){
aa=
document.createTextNode(document.getElementById('p1').childNodes[0].nodeValue)
bb=aa.splitText(3).nodeValue
setTimeout('document.getElementById("p1").childNodes[0].nodeValue=bb',1000)
}
</script>
</head>
<body>
<p>atipower </p>
<p ID="p1">nonlosose<br>
è piu' sveglio di p.carena</p>
<form>
<input type=button onclick=ver() value="controlla i childNodes in p1">
<form>
<input type=button onclick=prova() value="opera lo split (dopo
riclicca il bottone precedenteper controllare se sono cambiati nodi">
</form>
</form>
</body>
</html>

On Tue, 21 Nov 2000 23:12:18 GMT, 
p.ca...@toglimitiscalinet.it
 wrote:
opps non ho controllato cosa esce se mi vanto scoccamente e'
involontario..

 alert(aa)
Mi aggiungo un secondo alla discussione: Mi par di aver notato (molto
velocemente) che anche il metodo "nextSibling" ha risultati differenti su IE
e su NN6, almeno se usato all'interno di una tabella.


Il problema è sostanzialmente , almeno da quanto ho capito , che NN6 non
interpreta correttamente tutta la gerarchia dei nodi.....cioè in alcuni casi
(dipende da cos'è il figlio successivo) vede come figlio del suo genitore un
suo figlio...
prova a vedere il risultato che dovrebbe essere scontato del secondo figlio
di html ( che è il body) in un documento con solo
html,head,body..........document.chiildNodes[0].childNodes[1].nodeName
.....il risultato di NN6 non èquello che ci si aspetta ...... al momento per
avere compatibilità con NN6 l'unica soluzione è di usare sì nextSibling o
childNodes ,ma solo dell'elemento a cui si assegna l'id...
Anche nel creare un elemento ,se questo avrà figli, è meglio assegnare con
setAttribute(nome,attributo) o con 
elem.id
="nome"
un id agli elementi nodi o parte di essi (come nelle tabelle) e farvi
riferimento per compatibilità con  NN6 con il tradizionale
getElementById......


 ergo non ho ancora capito un axident
Il fatto è che tu lo sostituisci il valore del nodo !..........prova questo
........
dopo lo split aspetta l'alert dei 2 secondi che ti restituisce la parte
tagliata del testo come valore di aa.......
sinceramente non l'ho capito bene neanch'io...cmq come dicevo a forza di
picchiare la testa nel muro.......:-)))))
<html>
<head>
<title>test</title>
<script language="javascript">
bb=0;
function prova(){
aa=document.createTextNode(document.getElementById('p1').childNodes[0].nodeV
alue)
bb=aa.splitText(3).nodeValue
setTimeout('document.getElementById("p1").childNodes[0].nodeValue=bb',1000)
setTimeout('dd=aa.nodeValue;alert(dd)',2000)
}
function ver(){
aa=document.getElementById('p1').childNodes[0].nodeValue
alert(aa)
}
</script>
</head>
<body>
<p>atipower </p>
<p ID="p1">nonlosose<br>
è piu' sveglio di p.carena</p>
<form>
<input type=button onclick=ver() value="controlla i childNodes in p1">
<form>
<input type=button onclick=prova() value="opera lo split (dopo
riclicca il bottone precedenteper controllare se sono cambiati nodi">
</form>
</form>
</body>
</html>
andreotta fabiano


 childNodes ,ma solo dell'elemento a cui si assegna l'id...
Nemmeno, in quanto, come ti ho detto, almeno ad una prima occhiata
nextSibling cmq "sente" l'object Text di cui parlava Paolo.
Infatti su una pagina del genere:
<table border=1>
 <tr><td id="td11" onclick="f(this)">TD 1,1</td><td id="td12"
onclick="f(this)">TD 1,2</td></tr>
 <tr>
  <td id="td21" onclick="f(this)">TD 2,1</td>
  <td id="td22" onclick="f(this)">TD 2,2</td>
 </tr>
</table>
avendo semplicemente con f():
function f(obj){
    alert("ID object: "+
obj.id
+"\nNext Sibling :"+obj.nextSibling);
}
IE e NN si comportano nello stesso modo SOLO nel primo tag <TR>... Dopo
NN6.0 incomincia a sputare object Text a raffica. ^_^;;
Ora, si puo' sapere come mai NN6.0 ha questa gestione degli object Text un
po' farlocca?
Inoltre, sono di una qualche utilita'? :?

 Inoltre, sono di una qualche utilita'? :?
Infatti.......non capisco...........
poi mi spieghi questa?
prova a mettre questo in un documento e verificane l'output con tutti e due!
var cc =document.body.attributes.length;
alert(cc)


 alert(cc)
Questa la spiego molto semplicemente, e obiettivamente non si puo'
criticare.
IE con quella riga di comando, mostra il numero COMPLESSIVO di tutti gli
attributi del body.
Esempio, onload, onfocus, ecc..
Anche se NON SONO SETTATI.
Ovvero, <body> restituira' cmq il numero complessivo degli attributi (sul
mio IE 5.0, e' 78).
NN6.0, invece, con quella riga, ti restituisce gli attributi *CORRENTI*,
ovvero quelli che sono settati.
Ad esempio, se quella riga la inserisci in
<body onload="..">
document.body.attributes.length in NN6.0 sara' pari ad uno.
Se richiedi di visualizzare quell'attributo (document.body.attributes[0]),
NN6 ti dice che e' un object Attr, e puoi andare a verificarne le proprieta'
/ metodi, scoprendo che si tratta proprio dello stesso "onload" settato.
In sostanza, si puo' dire che sono due punti di vista differenti.


Sì , ho capito ....
c'è poi anche  il fatto che Attr in IE non funxia e neanche
createAttribute() ma solo in NN6...


Esattamente sarebbe cosě....
var txt = document.createTextNode('fourlength');
  var rr = txt.splitText(4).data;
  var pp = txt.data;
  alert(rr)
  alert(pp)
andreotta fabiano
 WebMŞster ATI POWER s.n.c.


mi sà di sì!!...
In uno scambio tra gli sviluppatori di mozilla
 parlavano di questo e una posizione era che il w3 riconosceva come
possibile il far riconoscere le new line come testo o meglio come
riconoscibilita' di porzioni di un testo altrimenti indiviso.
Se trovo il messaggio cui mi riferisco mando il riferimento, ma
ricordo che l'avevo trovato cercando "phantom" (nodi fantomatici... ;)
) nella query di 
bugzilla.mozilla.com
e mi pare che questo in teoria potrebbe avere senso.
Si avrebbero, correggetemi se sbaglio, degli ulteriori riferimenti
gia' pronti per sostituzioni senza dover ricorrere ad elaborazioni
altrimenti necessarie.
il problema è che nn6 li sente dove non dovrebbe mentre direi che ci
abbiamo messo una pezza tardiva per far considerare al browser come
unico nodo unico quello che ancora vede in realta' diviso. E l'esempio
dell' alert di un messaggio sopra.

picchiare la testa nel muro.......:-)))))
beh io mi ammacco... 
quindi la variabile associata alla parte splittata e non considerata
dallo splitText continua ad esistere ed essere interrogabile se
associata ad una variabile ch epuo' essere globale giusto?
e   sappiamo che senza scomodare i replace con doppia variabile
possiamo sostituire un nodo testo . vabbene.
 
senti gia' che ci siamo 
substringData(numero dipartenza, lunghezza da considerare)
 ti funziona su IE?
solo con NN6 son riuscito a farmi dare risposte attese 
_quindi_ sto sbagliando qualcosa... ;-)

e su NN6, almeno se usato all'interno di una tabella.
non mi stupirebbe se,in fondo, tutto ruotasse intorno all' abilità di
NN6 di interpretare i new line tra alcuni tag  come text node.
Se la tabella venisse scritta su una sola riga mi sentirei quasi di
scommettere (piccoli importi e rifiutando comunque di pagare se in
difetto...) che i due browser si darebbero la manina condividendo la
risposta. E questo solo tra tag che non prevedono, secondo il corretto
HTML, testo tra di loro 
un 
<table>
<TR>
		......
</tr>
<tr>
</TR>
secondo nn6 e' in realta
<TABLE>#TEXT
<TR>
 e cosi' via
mentre all' interno di tag di formattazione canonica per esempio
<p>
</p>
questo non avviene
pero' se uno scrive un codice
<p ID="p1">
uno
due 
tre
sei
</p>
e si richiede un
alert(document.getElementById("p1").childNodes[0].nodeValue)
mentre IE risponde al prompt  "uno due tre sei" su una sola riga
nn6 ripropone nel prompt la stessa formattazione su piu' righe
presente nel codice (digitata con semplici a capo enter non <br>
"uno
due 
tre
sei"
come se intervenisse (ipotizzo) una piccola patch che dicesse
(ricordati di visualizzare e considerare questi 4 childnodes come un
tutt'uno perche' sei in un tag canonico)
ma
alert (documen.getElementById("p1").childNodes[0].nodeValue.lenght)
restituisce valori diversi, maggiori in NN6 
In una pagina in cui sia presente una semplice tabella
se  si chiede ai browser il numero e nome dei child nodes  di primo
livello, per logica  i <tr>, la risposta sara' costante per IE
qualunque formattazione visuale si sia data al codice mentre la
risposta di NN ne sara' influenzata : per lui il primo nodo sara' di
tipo #text se la tabella e' formattata in modo usuale con a capo dopo
<table>
per avere omogeneita' di risposta la tabella dovrebbe essere scritta
tutta su una riga da <table> a </table>  e senza spazi tra i tag che
normalmente non prevedono testo compreso
(<table>   <tr> sara' comunque visto come 
<table> #text <tr>in presenza degli spazi)
<html>
<head>
<title>test</title>
<script language="javascript">
function
ver(){alert(document.getElementById('p1').childNodes[0].childNodes.length)
aa=""
for
(i=0;i<document.getElementById('p1').childNodes[0].childNodes.length;i++)
{aa+=document.getElementById('p1').childNodes[0].childNodes[i].nodeName}
alert(aa)
}
</script>
</head>
<body>
<TABLE BORDER="1" id="p1">
	<TR>
		<TD>R:1 C:1</TD>
		<TD>R:1 C:2</TD>
	</TR>
	<TR>
		<TD>R:2 C:1</TD>
		<TD>R:2 C:2</TD>
	</TR>
</TABLE>
<form>
<input type=button onclick=ver() value="controlla i childNodes
primolivello in tabella p1">
</form>
</body>
</html>
IE rispondera'correttamente 2 e poi TR TR
mentre NN riconoscera' come childNodes[0] un #text  quindi privo di
propri chilnodes e con seguente  alert vuoto successivo:
togliete gli a capo in tabella e gli spazi e la risposta sara' uguale

 _quindi_ sto sbagliando qualcosa... ;-)
No.....IE non la supporta ,ho provato, e si che era interessante!...........
cmq....mi stà venendo il dubbio ,come ha fatto notare ZERO , che ci stia
sfuggendo qualcosa !
andreotta fabiano
 WebMªster ATI POWER s.n.c.


 wrote in message
3a1c01f9...@news.iunet.it...

ok...........ma proprio per questo il dubbio che ci manchi qualcosa che
accomuni le due cose si fà più insistente!!
non pensi??
