Newsgroup: it.comp.www.html
Titolo: dimensione popup in base ai contenuti

Come da oggetto, vorrei sapere se č possibile (e se sě come) far sě che la
finestra aperta in popup abbia le dimesioni esatte dell'immagine contenuta
nella pagina richiamata.
Le immagini, nella pagina in questione, vengono caricate in maniera casuale
da uno script (e non hanno tutte la stessa dimensione).
grazie
bolos
www.thepixel.it


Guarda, pochi giorni fa, non mi ricordo se qua o su it.comp.lang.javascript
avevamo iniziato un thread sull'argomento, arrivando a due soluzioni:
una sfruttava i layer (
http://digilander.iol.it/infotip
),
l'altra le popup, arrivando a partorire uno script che fa piů o meno quello che chiedi.
Lo script non č ancora perfezionato (taglia le immagini se piů grandi dello schermo
e qualcos'altro che non mi ricordo) e per ora non ho proprio tempo di lavorarci sopra.
Io lo riposto qua, se qualcuno ha tempo di metterlo a posto, ben venga!
<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
function afficheVignette(cheminVignette,cheminMaxi)
 {
 document.write('<A HREF="javascript:afficheMaxi(\''+cheminMaxi+'\')">
<IMG SRC="'+cheminVignette+'" HSPACE=0 VSPACE=0 BORDER=1
ALT="Clicca qui per ingrandire la foto"></A>')
}
function afficheMaxi(chemin)
 {
 i1 = new Image;
 i1.src = chemin;
 html = '<HTML>\n<HEAD>\n<TITLE>Image</TITLE>\n</HEAD>\n<BODY
LEFTMARGIN=0 MARGINWIDTH=0 TOPMARGIN=0 MARGINHEIGHT=0>\n<CENTER>
<IMG SRC="'+chemin+'" BORDER=0 NAME=imageTest
onLoad="window.resizeTo(document.imageTest.width+11,document.imageTest.height+32)">
</CENTER>\n</BODY>\n</HTML>';
 popupImage =
 window.open('','_blank','toolbar=0,location=0,directories=0,menuBar=0,scrollbars=0,resizable=0');
 popupImage.document.open();
 popupImage.document.write(html);
 popupImage.document.close()
 };
</SCRIPT>
</head>
<body>
<!-- lo script richiede che il link sia un immagine.
disolito si mette l'immagine che si deve caricare rimpicciolita -->
<SCRIPT LANGUAGE="JavaScript">
afficheVignette("1.jpg","2.jpg");
</SCRIPT>
</body>
</html>
Nell'esempio, 1.jpg č l'immagine piccola che, cliccata, apre l'immagine grande.
Se mettete a posto lo script fatemelo sapere! :o)
MaRoK

 
sì è vero quello che dice Marok, se usi degli Infotip puoi caricare le immagini e il tool 
automaticamente ridimensiona i layer, praticamente sono autoridimensionanti.
Avendo delle select sulla pagina temevo che queste mi forassero senza pietà i layers, come dovrebbe 
accadere, invece basta attivare un'opzione nello script e automaticamente se sotto i layer ci sono 
degli oggetti che 'forano', praticamente si spengono per poi riaccendersi automaticamente quando il 
layer con l'immagine si chiude. 
Gli infotip però funzionano 'a sfioramento', se devi attivare le popup onclick ti conviene usare 
delle chromeless, sono più eleganti delle finestre normali se ci devi mettere solo una jpg. 
bye
sav
 

 
sì è vero quello che dice Marok, se usi degli Infotip puoi caricare le immagini e il tool 


 
Bè, in effetti se vuoi un codice crossbrowser il sistema più semplice è questo:
<span itid="infotip" itinline="<img src=immagine1.jpg>">visualizza prodotto1</span>
se invece vuoi reinventarti la ruota puoi provare a posizionarti un layer in cui inserire la jpg, 
che hai precaricato in un oggetto Image, usando come dimensioni del layer le proprietà width e 
height dell'oggetto Image. Poi devi gestire la visibilità del layer legandola ad onmouseover oppure 
onclick su un link. Poi si tratta di vedere se nella posizione in cui appare il layer vi sono delle 
select o degli iframe che ti forano il layer. In questo caso ti devi preoccupare anche di spegnere 
temporaneamente questi oggetti...bè insomma devi avere del tempo per debuggare bene il codice su 
tutti i browser più usati...a meno che tu non lo faccia a scopi didattici.
Spero di averti aiutato.
Ciao
Pino      

nella pagina richiamata.
C'è stato un thread il mese scorso, cercalo in google.
Il risultato lo puoi vedere su 
http://www.bofh.it/
, fammi sapere se
trovi il modo di farlo funzionare correttamente anche con MSIE...
-- 
ciao,
Marco