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

Ho trovato uno script di poche righe
che tenta di rimediare ad un po' dei guai causati dai frames:
if (self==top)
{
document.write('<frameset cols="125,*" border=0>')
document.write('<frame name="menu" src="menu.htm">')
document.write('<frame name="contenuto" src='+document.location.href+'?a>')
document.write('</frameset>')
}
In pratica, se il frame viene richiamato da solo (ad es. da google)
si genera automaticamente un frameset che ricrea il layout originale
però conservando titolo e url del frame
(cioè, il titolo e l'url che il browser riporta sono quelli corretti,
non sono un pacco come normalmente accade con i frames).
Qua la struttura è molto semplice, sono solo due frames
dei quali uno a sinistra, che contiene il menu, ed uno a destra,
che contiene il contenuto.
Anche complicando molto di più il tutto
(ho provato con tre frameset annidati)
e anche provando su browser obsoleti, come Netscape3.0,
tutto sembra funzionare perfettamente.
La sintassi poi sarebbe anche molto chiara, MA...
dall'alto della mia ignoranza non capisco il "?a".
Qualcuno me lo sa spiegare?
Ovviamente ho già provato a toglierlo e non funziona una cippa! :D
Confido in una illuminazione.
Grazie!
MaRoK

Guarda, a me funziona anche cosi:
document.write('<frame name="contenuto" src='+document.location.href+'>')
Cioč l'importante č che sia chiuso il tag. Per quanto riguarda il punto
interrogativo, li non so a cosa possa servire, l'unico caso in cui ho mai
incontrato ? in javascript č nella forma ridotta del if    condizione ?
comando1 : comando2 ;

 comando1 : comando2 ;
Eh, idem per me. Boh...
MaRoK

 Confido in una illuminazione.
*click*
-- 
C'ya,
ZER0
  :. job profile - coder.gfxer.webDesigner
"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)

 comando1 : comando2 ;
Si chiama "Operatore Ternario". Cmq, nel caso di Marok, non e' 
javascript ma HTML. Non avete notato dove finiva il codice js e dove 
iniziava il codice html. :)


 chiamata gia'con una querystring, va un po' tutto a farsi benedire.
Uhm... dici che va tutto a farsi benedire nel senso che si vedrebbe
il frame senza frameset (come se non ci fosse lo script),
o che proprio non si vede una mazza?
Ma soprattutto... come si potrebbe migliorare?
Grazie dell'illuminazione! :)
MaRoK

 Grazie dell'illuminazione! :)
Prego.. ma prendi quel che ti ho detto con le pinze. Oggi non sono 
decisamente nel pieno possesso delle mie capacita' psicofisiche.


 Oggi non sono decisamente nel pieno possesso delle mie capacita' psicofisiche.
Le mie mi hanno abbandonato da tempo, partite per destinazione ignota.
Spero mi mandino una cartolina prima o poi...
MaRoK

 temo sia un po' pesante.
ci ho dato un'occhiata, perche' la cosa mi interessa nel caso dovessi
migliorare lo script: 
http://www.jsdir.com/staffscripts/script084.asp
Devo dire che la cosa e' interessante...
Pero' ci sono alcune cose che non mi piacciono:
-    la scrollbar spostata (si dovrebbe risolve)
-    2 scrollbar sempre in NN (si risolve mettendo HEIGHT:99%)
-    2 scrollbar se la finestra e' piccola (in MZ)
-    non e' vero che funziona con OP (funziona solo con OP7.11)
Comunque se lo migliori e riesci a fare qualcosa di ancora piu' decente me
lo fai sapere per favore?

 lo fai sapere per favore?
Certamente, quando avrò partorito una versione stabile e funzionante
credo che raserò via tutti i frames... :)
(certo che se IE implementasse position:fixed...)
MaRoK

 MaRoK
Gianni