Newsgroup: it.comp.lang.javascript
Titolo: popup dinamico

Ciao,
ho due bottoni che aprono due finestre popup.
Queste finestre non contengono nient'altro che una sola immagine:
l'immagine visualizzata è diversa a seconda del bottone cliccato (viene 
passata attraverso il parametro pD) e le dimensioni dell'immagine 
corrisponsono a w e ad h, cioè alle dimesioni della finestra, alla quale 
l'immagine aderisce da tutti i lati.
Con la mia funzione, tento di generare dinamicamente un popup html e di 
usare sempre lo stesso popup tutte le volte. Ciò implica due cose che 
non mi riescono:
1) una volta cliccato un bottone, cliccando poi l'altro, la nuova 
finestra non deve aggiungersi, ma sostituirsi all'altra;
2) non deve succedere, come accade ora, che il popup si apra "dentro" il 
popup precedentemente generato;
Potreste aiutarmi a risolvere la situazione?
<script>
function apriPOPUP(url, nome, w, h, pD, tD) {
   var features = "";
   features += "scrollbars=no,";
   features += "menubar=no,";
   features += "resizable=no,";
   features += "left="+Math.floor(screen.width/2-w/2)+",";
   features += "top="+Math.floor(screen.height/2-h/2)+",";
   features += "alwaysRaised=yes,";
   features += "width=" + w + ",";
   features += "height=" + h;
   nw = window.open(url, nome, features);
  nw.document.open();
nw.document.write("<html>");
nw.document.write("<head>");
nw.document.write("<title>"+tD+"</title>");
nw.document.write("</head>");
nw.document.write("<body leftmargin='0' topmargin='0' marginwidth='0' 
marginheight='0'>");
nw.document.write("<img src="+pD+" width="+w+" height="+h+" title="+tD+">");
nw.document.write("</body>");
nw.document.write("</html>");
nw.document.close()
}
</script>
<a 
href="javascript:apriPOPUP('popup.htm','des','499','610','deserto.jpg','IlDeserto')">b1</a>
<a 
href="javascript:apriPOPUP('popup.htm','tus','330','630','cactus.jpg','IlCactus')">b2</a>

 if(nw&&!nw.closed) nw.close();
sarebbe corretto qui?
function apriPOPUP(url, nome, w, h, pD, tD) {
if(nw&&!nw.closed) nw.close();
var features = "";
Molte grazie, PM

 popup precedentemente generato;
?
Non vuoi aprire una nuova pagina ma non vuoi neanche aprirlo nella stessa?
Deduco quindi, come unica possibilità rimasta, che vuoi chiuderla se è
aperta...
Se sì io aggiungerei al di fuori della function un
 var nw=null;
e all'inizio della function:
if(nw&&!nw.closed) nw.close();
-- 
"That until there is no longer first class
And second class citizens of any nation
Until the colour of a man's skin
Is of no more significance than the colour of his eyes
Me say war"
B.M.

ok, ho capito provando:
in sostanza la console JS di Firefox mi dava errore (dicendo che non 
potevano essere chiusi popup non aperti da script). Ho aggiunto var 
nw=null; e tutto è andato bene: in sostanza ha una funzione diciamo di 
inizializzazione. Un ultima seccatura: potresti fare luce su questa 
sintassi?
if(nw&&!nw.closed) nw.close();
Grazie, ciao, PM

Aggiungendo alla fine della funzione
nw.ResizeTo(w,h) in IE va perfettamente...
ma in Firefox dà problemi: crea scrollbar a destra e sotto...
A questo punto si potrebbe usare il resize condizionalmente solo con IE

 if(nw&&!nw.closed) nw.close();
if(nw) significa più o meno "se esiste nw", ossia se nw!=null.
closed viene settato a true se chiudi la popup (altrimenti avresti un
riferimento a una popup chiusa, se l'utente la ha chiusa manualmente, e
quindi if(nw)=>true, ma nw.close(); ti segnalerebbe errore perché in realtà
è già stata chiusa...
-- 
"e mai che mi sia venuto in mente
 di essere più ubriaco di voi
 di essere molto più ubriaco di voi"
									  F.D.A.

ok, ma magari se fossi meno vago e postassi un po' di codice, potrebbe 
darsi che capisco meglio cosa intendi  :-)

ah, ecco, il problema sarà questo:
<BODY topmargin=0 bottommargin=0 leftmargin=0 rightmargin=0 
marginheight=0 marginwidth=0>
This margin code is compatible with both browsers.
Internet Explorer supports:
topmargin=0
bottommargin=0
leftmargin=0
rightmargin=0
Netscape Navigator supports:
marginheight=0
marginwidth=0


 direttamente nel codice?
Mettilo nel codice (sia che te decida di usare un css esterno, sia inline)


 No, il document.write con il filesystem non c'ha nulla a che vedere.
filesystem? Non era wuello che volevo dire, mi devo essere espresso male 
    :-)

 ah, ecco, il problema sarà questo:
[CUT]
xhtml non prevede parametri al tag body.
Perché non lo metti in css? del tipo body{margin:0;border:0} ?
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.

Transitional//EN'>");
Aggiungi il dtd:
nw.document.write("<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0
Transitional//EN'
'
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
'>");
'bye

bene, questo sembra andare sia con Firefox, sia con IE6 su macchina 
WindowsXP. Se, leggendo il codice, hai idee che possano prevenire 
problemi che non posso prevedere   :-)  fammi sapere. Intanto, molte 
grazie per l'aiuto e per la pazienza
<script>
var nw=null;
function apriPOPUP(url, nome, w, h, pD, tD) {
if(nw&&!nw.closed) {nw.close();}
   var features = "";
   features += "scrollbars=no,";
   features += "menubar=no,";
   features += "resizable=no,";
   features += "left="+Math.floor(screen.width/2-w/2)+",";
   features += "top="+Math.floor(screen.height/2-h/2)+",";
   features += "alwaysRaised=no,";
   features += "width=" + w + ",";
   features += "height=" + h;
   nw = window.open(url, nome, features);
  nw.document.open();
nw.document.write("<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 
Transitional//EN'>");
nw.document.write("<html xmlns='
http://www.w3.org/1999/xhtml
' 
xml:lang='en' lang='en'>");
nw.document.write("<head>");
nw.document.write("<title>"+tD+"</title>");
nw.document.write("</head>");
nw.document.write("<body style='margin:0px 0px 0px 0px;border:0px'>");
nw.document.write("<img src="+pD+" width="+w+" height="+h+" title="+tD+">");
nw.document.write("</body>");
nw.document.write("</html>");
nw.document.close()
if (navigator.appName == 'Microsoft Internet Explorer'){nw.resizeTo(w,h);}
}
</script>


 perché dovrebbe andare in quirk?
Perche' se la pagina la generi interamente col document.write, va in quirks
mode.
Un workaround possibile e' il seguente:
- Crei una pagina XHTML valida vuota.
- Nella popup fai prima caricare questa.
- E poi ci scrivi tramite document.write.
Questo nel caso generale.
Nel tuo caso particolare, potresti creare una pagina di template e poi
riempirla con i valori che ti interessano tramite DOM: assegnare il title,
e gli attributi dell'oggetto img (a proposito ricordati di inserire
l'attributo "alt").
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 7 hours, 53 minutes and 58 seconds ago.
on air ~ "Gianluca Grignani - Che ne sarà di noi"

 darsi che capisco meglio cosa intendi  :-)
Di solito si tende a cercare di dare le "imbeccate" giuste all'utente, e
non sempre la "pappa pronta".
BTW, intendo qualcosa di questo tipo:
(Finestra madre)
<script type="text/javascript">
var _singlePopup=null;
 
function showImage(pD,tD,w,h){
	var features="width="+w+
			",height="+h+					
			",left="+( (screen.width-w)>>1 )+
			",top="+( (screen.height-h)>>1 );
 
	if (_singlePopup!=null && !_singlePopup.closed)
		_singlePopup.close();
 
	_singlePopup = window.open("viewer.htm?pic="+pD+"&desc="+tD, "",features);
}
</script>
<a
href="javascript:showImage('deserto.jpg','IlDeserto','499','610')">b1</a>
(finestra figlia, viewer o template)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
	"
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
">
<html xmlns="
http://www.w3.org/1999/xhtml
">
<head>
<title>Untitled</title>
<style type="text/css">
	html,body{margin:0;padding:0}
</style>
<script type="text/javascript">
	window.onload=function(){
		var sQS=window.location.search;
 
		var args=sQS.match(/\?pic=([^&]+)&desc=(\w+)$/);
 
		if (args && args.length==3){
			document.title=args[2];
			document.images[0].src=args[1];
		}
 
	}
</script>
</head>
<body><img src="" alt="" title=""/></body>
</html>
Scritta cosi' com'e' venuta. Non ti ho impostato tutti gli attributi, non
ho usato il DOM W3C; ma se a te i vecchi browser non interessano puoi
impostare tutti gli attributi che vuoi usando il metodo setAttribute una
volta ottenuto il riferimento ad un oggetto.
Esempio:
<img id="myimage" src="" alt="" title=""/>
document.getElementById("myimage").setAttribute("title","my title");
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 9 hours, 42 minutes and 28 seconds ago.
on air ~ "The D4 - Come On!"

 Aggiungi il dtd:
Ho paura che sia del tutto superfluo, sicuramente per IE ed i browser gecko
based.
Almeno dai test che feci all'epoca, un documento cosi' generato viene
considerato in quirks mode, a prescindere dal doctype.
Potrebbe quindi essere fuorviante scrivere un doctype corretto, e poi dover
agire ugualmente a livello di codice di markup come se fossimo in quirks.
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 7 hours, 24 minutes and 18 seconds ago.
on air ~ "Muse - Time is Running Out"

 volevo solo dire che il contenuto originario veniva sovrascritto
Si, ma da quel che dici sembra che debba avere "un file su cui scrivere"
per funzionare, e non e' cosi'.
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 8 hours, 57 minutes and 40 seconds ago.
on air ~ "  INCOMPLETE   Donnie Darko - Ave Mariabd5960c4eb4b214cf8a0b0c619874c680021fe7200600000ac44000000b9"

 if(nw&&!nw.closed) nw.close();
Sì...prova. Potrebbe anche esserci bisogno di un setTimeout per il resto
della function per dar tempo (soprattutto a IE) di chiuderla, ma devi fare
dei test. Se nasce questo problema potresti modificare la tua chiamata da
"apriPOPUP('...')"
a un qualcosa del tipo
 "if(nw&&!nw.closed) nw.close(); setTimeout('apriPOPUP(\"....\")',100)"
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.

 sai se esiste un emulatore di browser?
No
Puoi scaricarti tutti quelli che ti servono e installarli, ma il problema
resta IE e i browser che girano sotto altri S.O.
Io uso vmware per IE4 - IE5.0 - IE5.5 + mandrake linux.


 volevo solo dire che il contenuto originario veniva sovrascritto
Si, ma da quel che dici sembra che debba avere "un file su cui scrivere"
per funzionare, e non e' cosi'.
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 8 hours, 58 minutes and 50 seconds ago.
on air ~ "John Lennon - So This Is Chris"

 non sempre la "pappa pronta".
beh, guarda, la funzione che ho messo su stamane è la prima funzione js 
di tutta la mia vita: penso di essermela cavata benino...
Grazie per gli aiuti: adesso me li studio
Ciao, PM

facendogli generare un doctype transitional invece di inserire il solo 
<html> reagisce rimettendo le cose come quando settavo in margini in 
html in origine (cioč, ottengo solo una porzione di bianco sotto ma non 
sul lato destro):
nw.document.write("<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 
Transitional//EN'>");
nw.document.write("<html xmlns='
http://www.w3.org/1999/xhtml
' 
xml:lang='en' lang='en'>");
nw.document.write("<head>");
nw.document.write("<title>"+tD+"</title>");
nw.document.write("</head>");
nw.document.write("<body style='margin:0px 0px 0px 0px;border:0px'>");


grazie!
Posso domandarti se in generale ti senmbra una cattiva soluzione?
Il mio tentativo iniziale era quello di evitare di passare per PHP, che 
nel sito si occupa già ampiamente di altro  :-)

provato su Firefox, perfetto.
Su IE6 provato inline: peggio di prima, perdo anche il margine destro 
(altri due o tre pixel di bianco)


 grazie per l'aiuto e per la pazienza
Verifica solo con le vecchie versioni di IE ed effettua la verifica sul
server web, non in locale.
In generale io, dopo l'open della popup, metterei un setTimeout per esser
certi che la popup venga aperta.
-- 


 "cioè la usa solo in quanto file su cui scrivere"
volevo solo dire che il contenuto originario veniva sovrascritto

 cioč la usa solo in quanto file su cui scrivere
No, il document.write con il filesystem non c'ha nulla a che vedere.
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 8 hours, 9 minutes and 17 seconds ago.
on air ~ "Green Day - Boulevard of Broken Dreams"

     :-)
Allora forniscimi delucidazioni su questa tua frase:
"cioè la usa solo in quanto file su cui scrivere"
:)
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 8 hours, 16 minutes and 13 seconds ago.


Bene,
non sembra che la cosa risolva la cosa che mi stava più a cuore dopo 
aprire il popup: cioè, far sparire il bordino bianco in IE. Farò 
comunque tesoro dei tuoi insegnamenti.
PM

 cioè, far sparire il bordino bianco in IE.
Guarda, ho testato or ora il codice che ti ho dato e di "bordino bianco" su
IE6 (mi pare che l'avessi provato con quello, giusto?) neanche l'ombra.
Non vorrei che tu ti stessi confondendo con l'effetto "raised" della
finestra, dato che parli di "bordino in basso".
Prova ad impostare il background della pagina che viene aperta nella popup
con un colore tipo verde, fucsia o blu. Se vedi il "bordino" che dici te di
quel colore, allora vuol dire che un bordo in effetti c'e' e allora e' il
codice HTML che hai scritto che non va.
Altrimenti, ti stai confondendo con l'effetto raised della finestra.
-- 
ZER0://coder.gfxer.web-designer/
~ Non esistono donne brutte. Dipende solo da quanta vodka bevi.
(proverbio russo)

 A parte che avevo capito leggendo un tuo post che era marginale..
Hai ragione: poi perň mi hanno spiegato che il sito č di un artista che 
"ci tiene": diciamo che per me era marginale ma per lui no   :-D
Proverň meglio il tuo codice: nel frattempo stavo anche valutando altre 
soluzioni, tipo questa:
function openPop(pD, nome, w, h, tD)
{
  var features = [
   'scrollbars=no' ,
   'menubar=no' ,
   'resizable=no' ,
   'left='+Math.floor(screen.width/2-w/2) ,
   'top='+Math.floor(screen.height/2-h/2) ,
   'width=' + w,
   'height=' + h
  ].join(',');
  HTML = [
   '<html>' ,
   '<head>' ,
   '<title>'+tD+'</title>' ,
   '</head>' ,
   '<body style="margin:0;">' ,
   '<img src="'+pD+'" width="'+w+'" height="'+h+'" title="'+tD+'">' ,
   '</body>' ,
   '</html>'
  ].join('');
  nw = window.open('javascript:opener.HTML', nome, features);
  if (nw && !nw.closed && nw.focus)
   nw.focus();
  return false;
}

    'top='+Math.floor(screen.height/2-h/2) ,
Questa roba qui la puoi comprimere come ti ho fatto vedere nel mio codice,
e' anche piu' ottimizzata (benche' in modo non sensibile):
'left='+( (screen.width-w)>>1 )
-- 
ZER0://coder.gfxer.web-designer/
~ Plagiarism is copying from one source;
research is copying from two or more
(Wilson Mizner)

posso rimettermici dopodomani sera: se segui il thread ti faccio sapere  :-)
Molte grazie, PM

 Molte grazie, PM
De nada.
-- 
ZER0://coder.gfxer.web-designer/
~ Se potete leggere questo, la mia donna e' caduta.
(Letta sul retro di una maglietta di un motociclista)

nel frattempo:
l'effetto di cui parlo è questo:
http://playmaker.altervista.org/zero/getURL4b.htm
Non è prodotto dal tuo codice (che devo studiare meglio: non riesco ad 
applicare su un progetto una cosa che non capisco fino in fondo, dunque 
devo avere un paio di giorni per capirlo bene)   :-)
Ciao, grazie,
PM


 
http://playmaker.altervista.org/zero/getURL4b.htm
Ho aperto la prima immagine con IE, ma l'effetto di cui parli non l'ho
visto.. Io credo che ti stai confondendo con l'effetto raised.
Eventualmente in giornata ti metto online un paio di immagini per farti
capire meglio cosa intendo.
-- 
ZER0
~ The Tangent Universe collapsed 5952 days, 1 hours, 43 minutes and 49 seconds ago.

Ciao,
probabilmente ci sono (btw, non avrei mai potuto confondere l'effetto di 
cui parli con quello che vedo):
il problema si verifica soltanto su XP/sp2/IE6:
su Win 2000/IE6 nessun problema, ad esempio.
Ti posto l'url di due screenshot:
http://playmaker.altervista.org/zero/cactus_online.JPG
http://playmaker.altervista.org/zero/cm_online.JPG
Può essere qualcosa che ha a che vedere col service pack 2?
Tu con sistema visualizzi la pagina?
Ciao, grazie,
PM


 Può essere qualcosa che ha a che vedere col service pack 2?
A questo punto direi di si', ma non posso aiutarti in merito perche' non ho
installato il SP2 su XP.
Hai verificato, in ogni caso, che si tratti effettivamente del body del
documento, quei pixel che vedi? Cambiando colore al background come ti
avevo suggerito.
In quel caso significa che la PX apre una finestra piu' grande di quanto
gli si dice realmente.
Prova, nel codice che ti ho gia' dato, ad aggiungere questa riga nel tag di
script della pagina viewer/template:
alert(document.documentElement.clientHeight);
E verifica che il numero che ti restituisce corrisponda effettivamente a
quello passato come altezza nella funzione di apertura popup.
-- 
ZER0
~ The Tangent Universe collapsed 5952 days, 11 hours, 34 minutes and 30 seconds ago.
on air ~ "The Cure - The Last Day of Summer"

 non escludere nulla; anche cio' che per qualcun'altro puo' esser "ovvio".
ok, ok, no problem
Non ho avuto il tempo di vedere bene il tuo codice, ho modificato il mio 
al volo, per ora:
(modifica)
http://playmaker.altervista.org/zero/getURL4c.htm
(risultato)
http://playmaker.altervista.org/zero/4c.JPG
Quindi il bianco è il background.
Devo dire che avevo tentato anche un resize "di poco", togliendo qualche 
pixel in altezza tramite resizeTo: i risultati sono pessimi   :-(
Ciao,
PM

non so se ho fatto bene, ma ho aggiunto questo:
if (navigator.appName == 'Microsoft Internet
Explorer'){alert(document.documentElement.clientHeight);}
Bene: un dato è che qualsiasi foto io apra, qualsiasi dimensioni io 
passi, la risposta è sempre 587 (risposta errata: una è 450 e l'altra è 
532). Può essere che io abbia capito male qualcosa ed ho applicato male 
quello che dicevi di applicare al tuo codice, però.
PM


URL: 
http://playmaker.altervista.org/zero/getURLss.htm


stesso esperimento su Firefox:
dà 609 in tutti i casi: sicuramente sto capendo male qualcosa, mi sa
Grazie, PM

 URL: 
http://playmaker.altervista.org/zero/getURLss.htm
Hai sbagliato, l'hai messo nella finestra madre.
Sarebbe preferibile se tu riuscissi ad utilizzare il codice che ti ho dato
per la gestione del viewer; altrimenti mi riesce difficile aiutarti.
-- 
ZER0
~ The Tangent Universe collapsed 5952 days, 12 hours, 21 minutes and 57 seconds ago.
on air ~ "Evanesence - Bring Me To Life"

ok, avevo capito:
va bene, posso rimetterci mano venerdě, magari passo il fine settimana a 
provare il tuo esempio.
Grazie ancora,
PM


 provare il tuo esempio.
Non l'avevi gia' implementato? Se ben ricordo l'avevi testato e avevi visto
difatti che ti lasciava ancora il bordo bianco.
Col codice che ti ho dato non c'e' molto da fare, devi semplicemente
copiarlo, sostituendo i link.
-- 
ZER0
~ The Tangent Universe collapsed 5952 days, 12 hours, 26 minutes and 23 seconds ago.
on air ~ "Luciano Ligabue - Ti Sento"

sě, č corretto, ma non hai idea del disordine che c'č stato in questi 
giorni sul mio desktop    ;-)
PM


Ciao,
ti comunico che anche la tua funzione su IE6/XP/SP2 mostra il bordo 
bianco sotto... Dunque, il problema non appare risolto...
Ciao,
PM


Il metodo che ti ho fornito NON serviva ad eliminare questo bug (perche' di
bug si tratta), bensi' a gestire meglio l'approccio delle popup.
Quel che devi fare adesso, e' aggiungere nel viewer il codice che ti ho
scritto per visualizzare l'altezza effettiva della pagina e verificare che
corrisponda con quella impostata per l'apertura.
Fammi sapere.
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 2 hours, 22 minutes and 14 seconds ago.
on air ~ "Tears For Fears - Head Over Heels"

ok, fatto
Firefox risponde correttamente -->450
IE risponde -->453

 puoi spiegarmi a che rigo inserire quel quel codice?
Nella pagina del viewer? Un po' dove ti pare. Basta che sia ovviamente
all'interno del tag <script>
Puoi metterlo subito dopo l'apertura del tag script, o dentro la funzione
window.onload, prima della chiusura.
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 3 hours, 5 minutes and 29 seconds ago.
on air ~ "donny darko - Mad World (full version)"

 IE risponde -->453
Beh, a questo punto abbiamo piu' o meno tutti gli strumenti per poter
ovviare al problema.
Puoi provare intanto a fare una prova empirica, ovvero un resizeBy di -3 e
vedere cosa succede su IE (su Firefox ovviamente ti cancellera' dei pixel,
comportamento che non vuoi, ma serve solo per vedere se il risultato e'
quello desiderato).
Quindi, come primissima riga del tag script, prima di altri codici, prova a
fare:
window.resizeBy(0,-3);
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 3 hours, 9 minutes and 42 seconds ago.


incredibilmente, l'ho fatto mentre scrivevi: funziona.
Però, dico io, uno deve vivere tappando i buchi di M$ così? E adesso mi 
devo mettere a produrre uno script condizionale in cui chiedo al browser 
se è affetto da service pack nella variante 2, se la macchina è XP e se 
il browser è IE6? Dimmi tu...
PM


 il browser è IE6? Dimmi tu...
Nono.. dio ce ne scampi. Questo e' il vecchio approccio del cosidetto
"sniffing" del browser/piattaforma.
Il discorso e' molto piu' semplice:
Adesso alla finestra si passa solo l'informazione circa il title ed il file
dell'immagine.
Basta aggiungere anche le dimensioni come parametro, in modo tale che la
finestra verifichi se ci sono differenze, e si autocorregga.
Il tutto, come vedi, a prescindere dal browser.
Nella finestra madre, quindi, sostituisci:
_singlePopup = window.open("viewer.htm?pic="+pD+"&desc="+tD, "",features);
con:
_singlePopup =
window.open("viewer.htm?pic="+pD+"&desc="+tD+"&w="+w+"&h="+h, "",features);
Mentre il codice di script del tag viewer a questo punto e' bene cambiarlo
cosi':
<script type="text/javascript">
var imgURI="",w=0,h=0,
	sQS=window.location.search,
	args=sQS.match(/\?pic=([^&]+)&desc=(\w+)&w=(\d+)&h=(\d+)$/);
 
if (args && args.length==5){
	document.title=args[2];
	imgURI=args[1];
 
	w=parseInt(args[3],10);
	h=parseInt(args[4],10);
 
	if (document.documentElement &&
		typeof document.documentElement.clientWidth!="undefined" &&
		typeof document.documentElement.clientHeight!="undefined"){
 
		w-=document.documentElement.clientWidth;
		h-=document.documentElement.clientHeight;
 
		if (w<0 || h<0)
			window.resizeBy(w,h);
	}
}
window.onload=function(){
	if (imgURI!="")
		document.images[0].src=imgURI;
}
</script>
Te l'ho scritto al volo nel post, spero non vi siano errori. Nel qual caso
fammi sapere che gli do' un'aggiustatina.
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 3 hours, 39 minutes and 16 seconds ago.
on air ~ "Donnie Darko - 01 - Carpathian Ridge"

 }
Non so come me la sono cavata...  :-(
Vorrei capire una cosa: se qualcuno usa questo sistema con Netscape
4.7/6/7 e con IE5.5 sotto Windows, si potrebe verificare un qualche tipo 
di problema? C'è la possibilità che vi siano problemi futuri? Il tutto, 
pensa te, è nato dal fatto che il sito utilizzava una chromeless che non 
è più compatibile con IE6.
PM

menu custom di Firefox
In breve e se ho capito bene quello che vuoi fare, definisci il menu
come un template nel tuo XUL e poi usi come datasource l'RDF fornito
dal sito web.
'bye

all'aria un sacco di lavoro.
Se e' in qualche modo IT con Javascript quale bug e'?
O se esiste in bugzilla il # del bug :-)
'bye

 C'è la possibilità che vi siano problemi futuri? 
Non ho testato, ma non dovrebbero esserci problemi. A meno di qualche bug,
ovviamente.
Se fosse stato usato lo sniffing, potevano esserci problemi di
compatibilita', soprattutto in futuro.
Usando l'object checking, ed attenendosi agli standard, ci poniamo
ragionevolmente al sicuro.
Il codice che ti ho scritto ad esempio viene ignorato da Netscape 4.x
perche' non possiede il documentElement. Quindi impostera' unicamente
l'immagine, senza andare in errore.
Non avendo bug nella definizione delle dimensioni della finestra, ci va
piu' che bene.
Per quanto riguarda il futuro.. come ti ho detto, il codice segue gli
standard. Ma nessuno di noi ha la sfera di cristallo, quindi la certezza
non c'e' mai.
Ti ricordo che le chromeless non erano standard, ne' tantomeno proprietarie
di IE..funzionavano unicamente grazie ad un bug di explorer, che difatti
poi e' stato corretto; e quindi non ha molto senso fare un parallelismo.
Alla peggio, infatti, si spera che il bug delle dimensioni finestre di IE6
su XP SP2 venga corretto, e quindi il codice semplicemente non fara' piu'
il resize :)
Se vuoi, potresti migliorarne la funzionalita' di autocorrezione in modo
che verifichi che le dimensioni non siano anche INFERIORI a quelle
impostate (noi attualmente controlliamo solo se sono superiori).
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 7 hours, 38 minutes and 3 seconds ago.
on air ~ "Autopilot Off - Make A Sound"

 O se esiste in bugzilla il # del bug :-)
Non lo so, ma spero tanto di si.
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 7 hours, 40 minutes and 10 seconds ago.


 impostate (noi attualmente controlliamo solo se sono superiori).
no, va be', è ok... GRAZIE!
PM

 dal sito web.
proprio così: la voce di menu deve poi diventare una extension
Ciao, grazie,
PM

che sia.. mi vanno bene entrambi :)
Questa? 
http://www.cfmentor.com/mailman/listinfo/xulex
Fatto ora, vediamo se mi arrivano i messaggi.
'bye

 no, va be', è ok... GRAZIE!
De nada.
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 9 hours, 24 minutes and 40 seconds ago.
on air ~ "The Ordinary Boys - Over the Counter Culture"

 Fatto ora, vediamo se mi arrivano i messaggi.
Non so se ti arriva lo storico, o se c'e' un opzione per farlo.. boh, va
beh, fammi sapere in caso.
-- 
ZER0
~ The Tangent Universe collapsed 5954 days, 9 hours, 25 minutes and 22 seconds ago.


 > Cmq se vuoi aggiungere parametri, basta modificare la regexp 
devo un po' studiarne il meccanismo: ne intuisco la potenza ma sarebbe 
il caso di addentrarvisi meglio.
Grazie di tutto,
PM
P.S.: fatti una risata: 
http://www.reebok.com/Static/global/JS_CSS/hbx.js