Mi era venuto il dubbio.. infatti l'ho cambiato.. ma niente...1. la parola "frame" come pure "frames" e` riservata:" usandola come nome di una variabie puoi incorrere in comportamenti imprevedibili.
non mi imposta ancora la onload. (se in un qualunque frame
scelgo un link di google non appare il messaggio)
Infatti così riesco ad accervi, ma solo per farmi stampare il2. tutti i frame definiti dentro un frameset fanno parte della stessa collezione, quindi se nella finestra top c'e` un frameset, tutti i suoi frame vengono indirizzati in uno dei seguenti modi:
top.NOMEFRAME
top.frames['nomeframe']
top.frames[N] // dove N va da 0 al max-1
nome.. già se provo ad accedere al rispettivo document
mi da null (top.frames[0].document == null, anche con
top.sinistra.* mi da errore, come se non trovasse il frame
con tale nome, ma esiste!!!)
Come detto sopra, non riesco ad accedere al frame in se..Se invece in una pagina dentro un frame c'e` un nuovo frameset, i frame di questo fanno parte di una collezione nuova, che dipende dalla collezione precedente:
top.NOMEFRAMEPRINC.NOMEFRAMESECOND.
(con le stesse opzioni di sintassi di cui sopra).
quindi neanche ai frame "figli".
Ad es, il seguente codice non mi da il numero dei sotto frame,
anche se la pag. contiene frame!!
function modificaOnload() {
var frs = document.getElementsByTagName('frame');
for (i = 0; i < frs.length; i++) {
var fr = frs[i];
name = fr.getAttribute('name');
alert("Opero su frames["+i+"] = "+name);
fr.onload = loaded;
var frs2 = fr.document.getElementsByTagName('frame');
if (frs2!=null) alert(frs2.length);
}
}
OR ORA MI SORGE UN DUBBIO : non dovrebbe esserci
differenza tra
.. = document.getElementsByTagName('frame');
e
.. = window.frames;
e quindi anche tra (visto che frames[] è un window)
.. = fr.document.getElementsByTagName('frame');
e
.. = fr.frames;
allora perche mi danno risultati diversi?!?!?

 
			
			 
					
					
					
						 Rispondi quotando
  Rispondi quotando