Newsgroup: it.comp.lang.javascript
Titolo: Layer e refresh

Ciao a tutti,
ho iniziato ad introdurre nel mio codice l'uso dei layer e devo proprio
dire che in molti casi le cose mi si sono proprio semplificate. Ho pero'
un unico problema su Mac in caso di pagine autocentranti. Questo perche'
mentre e' piu' raro che un utente windows modifichi la dimensione del
suo browser (solitamente usato alla massima apertura a qualsiasi
risoluzione) durante la visualizzazione della stessa pagina, cio' e'
molto piu' frequente con un utente Mac il cui browser non e' adattabile
in automatico alla risoluzione dello schermo. Pertanto spesso allarga o
restirnge la finestra del navigatore tramite semplice mouse. Riporto di
seguito un esempio del codice che uso:
-------------------------------------------------
<body bgcolor="#ffffff" marginheight=0 marginwidth=0 topmargin=0
leftmargin=0>
<script>
	if (navigator.appName.substr(0,3).toLowerCase() == "net") {
	h = (window.innerWidth - 686)/2 + 255;
	} else {
	h = (document.body.clientWidth - 686)/2 + 255;
	}
</script>
<center>
<img src="./img/spazio.gif" width="1" height="25"><br>
	<table border=0 cellspacing=0 cellpadding=0 width=686 heght=400>
	<tr><td><font>bla bla bla</font><br></td></tr>
	</table>
</center>
<!--- Layer foto 1 --->
<script>
	if (navigator.appName.substr(0,3).toLowerCase() == "net") {
	document.write("<layer name=\"foto1\" top=142 left=" + h + "
visibility=show>");
	} else {
	document.write("<div ID=\"foto1\" STYLE=\"POSITION: absolute; Z-INDEX:
20; VISIBILITY: visible; TOP: 142px; LEFT:" + h + "px;\">");
	   }
</script>
	<table border=0 cellspacing=0 cellpadding=0>
	<tr><td><img src="./img/foto.jpg" width="135"
height="73"><br></td></tr>
	</table>
<script>
	if (navigator.appName.substr(0,3).toLowerCase() == "net") {
	document.write("</layer>");
	} else {
	document.write("</div>");
	   }
</script>
</body>
</html>
-------------------------------------------------
Il problema e' che quando si modifica la dimensione della finestra del
browser il layer non prende le nuove coordinate orizzontali e rimane
erroneamente piazzato nella nuova finestra stessa. La mia domanda e':
esiste un modo per dare un refresh automatico alla pagina quando la
dimensione della finestra del browser viene modificata dall'utente?
Grazie in anticipo. Salutoni.

ciao fratello di Mac!
allora la questione e' che al contrario di windows mac fa un mezzo reload
della pagina quando la si ridimensiona
mezzo reload nel senso che (mi sembra) non la ricarica completamente,
ignora gli stili... ecc
io sto studiando una soluzione a partire dagli esempi di "The Dynamic Duo
Cross-Browser DHTML" all'URL 
http://www.dansteinman.com/dynduo/
che e' l'unico manuale Cross-Browser che ho trovato
penso che possa esserti utile l'esempio a:
http://www.dansteinman.com/dynapi/docs/examples/liquid1.html
non ti passo niente di definito perche' ci sto ancora lavorando su...
ciao
aldo
 ------------------------------------------------------------------------
   Ciao a tutti,
   ho iniziato ad introdurre nel mio codice l'uso dei layer e devo proprio
   dire che in molti casi le cose mi si sono proprio semplificate. Ho pero'
   un unico problema su Mac in caso di pagine autocentranti. Questo perche'
   mentre e' piu' raro che un utente windows modifichi la dimensione del
   suo browser (solitamente usato alla massima apertura a qualsiasi
   risoluzione) durante la visualizzazione della stessa pagina, cio' e'
   molto piu' frequente con un utente Mac il cui browser non e' adattabile
   in automatico alla risoluzione dello schermo. Pertanto spesso allarga o
   restirnge la finestra del navigatore tramite semplice mouse. Riporto di
   seguito un esempio del codice che uso:
   -------------------------------------------------
--
Posted from 
DNS.GRUPPO4.COM
 [193.70.107.66] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
http://www.dansteinman.com/dynapi/docs/examples/liquid1.html
Grazie, vado a dare un'occhiata...:)
Salutoni.

prova questo (ma non mi convince del tutto)
/****************************************************************
DHTML - FUNCTION resizeFix() - ricarica ns4 dopo un ridimensionamento
Script from 
sup...@gruppo4.com
 - 
http://www.gruppo4.com
You can use this code if you leave this message
****************************************************************/
/*parte da inserire nel foglio.js o nella pagina tra tag SCRIPT*/
function resizeFix() {
if (widthCheck != window.innerWidth || heightCheck != window.innerHeight)
document.location.replace = window.history.go(0)
}
/* parte da inserire alla fine della pagina html SUBITO PRIMA DEL TAG </BODY>*/
<SCRIPT TYPE="text/javascript"><!--
// Netscape Resize Fix
if (document.layers) {
        widthCheck = window.innerWidth
        heightCheck = window.innerHeight
        window.onResize = resizeFix
}
//  -->
</SCRIPT>
------------------------
ciao
aldo
www.gruppo4.com


 prova questo (ma non mi convince del tutto)
K funziona alla perfezione.... pero' come esistono Mac e Win esiste,
purtroppo, anche Exlorer oltre a Netscape.... :)))
Io ho provato a modificare il detect del ridimensionamento con:
	if (document.all) {
	        widthCheck = document.body.clientWidth;
	        heightCheck = document.body.clientHight;
	        window.onResize = resizeFix;
			}
ma IE non me lo considera nemmeno.... :(
Se qualcuno sa come fare un check del ridimensionamento della finestra
del browser sotto IE mi farebbe una cortesia nel postare qualche
suggerimento.... :) Poi ci penso io ad unire i due check per rendere
compatibile il tutto e a postare per uso di tutti il risultato finale.
Grazie in anticipo.
Salutoni.
-- 
Paolo Vallino