Newsgroup: it.comp.lang.javascript
Titolo: Cambiare frame su OnLoad

Ciao a tutti,
io ho una pagina divisa in tre frameset come segue:
<FRAMESET COLS='20%,*' border=yes bordercolor=#DAA520>
    	<FRAMESET ROWS='30%,*'  border=yes bordercolor=#DAA520>
    	    	<FRAME NAME='logo' SRC='logo.html' SCROLLING=NO NORESIZE>
    	    	<FRAME NAME='menu' SRC='menu.html' SCROLLING=NO NORESIZE>
    	</FRAMESET>
    	<FRAMESET ROWS='30%,*'  border=0 bordercolor=#DAA520>
    	    	<FRAME NAME='nome' SRC='nome.html' SCROLLING=NO NORESIZE>
    	    	<FRAME NAME='prima' SRC='main.html'  SCROLLING=auto NORESIZE>
    	</FRAMESET>
</FRAMESET>
i frames 'logo' e 'nome' restano sempre fissi, nel frame 'menu' ci sono i tasti 
con effetto rollover (ma che fantasia eh?) e nel frame prima vengono 
visualizzate le pagine.
Quello che vorrei ottenere e' che al caricamento di ogni pagina nel frame 
'prima' la pagina nel frame 'menu' cambiasse.
l'idea poteva essere di mettere nella pagina del framset uno script di questo 
tipo:
<head>
<SCRIPT LANGUAGE="JavaScript">
<!--
function frameNavig() {
frames['menu'].window.location="menu800a.html";
}
-->
</SCRIPT>
</head>
e nella pagina che viene caricata il seguente richiamo nel tag <body>
<body OnLoad="parent.frameNavig()">
ma non funziona!!! non capisco perche'...forse perche' unso dei frameset 
annidati? e come posso fare per risolvere?
Se qualcuno mi potesse aiutare..:-)
Grazie
Ciencio

 Ciencio
Per raggiungere un frame annidato devi utilizzare il seguente metodo.....
la pagina  principale è "top".....
supponendo che il secondo frame di top cioè "frames[1]" contiene a sua volta
due frame e a te interessa il primo,
per raggiungerlo dovrai scrivere
top.frames[1].frames[0].location="tua.htm"
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

andreotta fabiano
Pensavo di avere capito ma invece non funziona lo stesso...ripartiamo 
dall'esempio pratico: io ho un framset costruito cosi':
<html>
<head>
<script language="javascript">
<!-- 
function frameNavig() {
top.frames[0].frames[1].location='menu800a.html';
} 
-->
</SCRIPT>
</head>
<FRAMESET COLS='20%,*' border=yes bordercolor=#DAA520>
	<FRAMESET ROWS='30%,*'  border=yes bordercolor=#DAA520>
		<FRAME NAME='logo' SRC='logo800.html' SCROLLING=NO NORESIZE>
		<FRAME NAME='menu' SRC='menu800.html' SCROLLING=NO NORESIZE>
	</FRAMESET>
	<FRAMESET ROWS='30%,*'  border=0 bordercolor=#DAA520>
		<FRAME NAME='nome' SRC='nome800.html' SCROLLING=NO NORESIZE>
		<FRAME NAME='prima' SRC='main800.html'  SCROLLING=auto 
NORESIZE>
	</FRAMESET>
</FRAMESET>
</html>
se ho capito bene 
top = al framset esterno (quello con Cols per intenderci)
frames[0] = il primo framset (quello che contiene i frame 'logo' e 'menu')
frames[1] = il frame 'menu'
quindi la function che ho usato una volta richiamata dovrebbe cambiarmi la 
pagina visualizzata in 'menu' da menu800.html a menu800a.html.
Nella pagina "intro800.html" che viene visualizzata all'interno del frame 
'prima' ho inserito <body onload="parent.frameNavig()"> e l'idea sarebbe 
che quando questa si carica mi richiama la function nel frameset la quale 
mi sostituisce la pagina nel frame 'menu', ma non funziona!!!!
dove sbaglio????
-- 
----------------
| Pace e Amore |
|              |
|   Ciencio    |
----------------