Newsgroup: it.comp.lang.javascript
Titolo: layer

Sto litigando con Netscape, perchè è appena arrivato e già vuol dettar
legge:
con Explorer, se devo far sparire qualcosa all'interno della pagina, metto
quel qualcosa in un <div> e poi lo sovrascrivo con l'innerHTML. Come faccio
con Netscape?
Mi spiego meglio (magari posso imparare qualcosa di nuovo): ho una pagina
con un form e *n* submit, ognuno con una diversa funzione. Ho nascosto
questi tasti perchè voglio che prima dell'invio del form vengano effettuati
dei controlli sui dati.
Esiste una funzione che mi permette di scegliere quale tasto premere?
qualcosa del tipo form.submit(n) (???).
Grazie e Ciao!
Davide

 qualcosa del tipo form.submit(n) (???).
Oddio, sara' che sono mezzo moribondo, ma non ho davvero capito le tue
intenzioni... :?

 intenzioni... :?
ho una cosa del genere:
<form name="session">
<input type="text" name="valore">
<input type="submit" name="command" value="Invia">
<input type="submit" name="disconnect" value="disconnetti">
<input type="submit" name="F3" value="F3">
<input type="submit" name="F4" value="F4">
[...]
</form>
con explorer se devo submittare (si può dire?) un disconnetti, dopo un
controllo, faccio:
<input type="button" onclick="controllo();session.disconnect.click();">
ma questo con Netscape non funzia!!!
Tieni presente che sto usando javascript per personalizzare delle pagine
generate da una *applicazione* server-side (non ASP o PHP o CGI, bensì un
applicativo di terze parti).
Spero di essere stato chiaro! :-)
Ciao!
Davide

Ciao,
scusate se mi intrometto nella discussione, ma vorrei dire il mio parere sul
submit...
perche' usi tutti quei bottoni submit? non fai prima a chiamare una funzione
e poi effettuati i controlli richiamare eventualemnte l'azione submit?
(idem per disconnetterti)
Perche' non provi ad usare la funzione "onSubmit" ? ti consente di mantenere
il controllo prima dell'invio.
Scusate l'intrusione..
Emanuele

 l'innerHTML!
Lascia perdere  funzia solo con NN6  così....
<html>
<head>
<title>Test</title>
<script language="JavaScript">
function cambia(){
if(document.all){
document.all.primo.innerHTML = "Pluto";
}
else if(document.getElementById && (navigator.appName=='Netscape')){
document.getElementById('primo').innerHTML ="Pluto";
}
}
</script>
</head>
<body>
<div id="primo" style="position: absolute; top: 20; left: 200;
visibility:visible; ">
<p align=\"center\">ciao!</p>
</div>
<a href="javascript:cambia()">Pluto</a>
</body></html>
____________________
andreotta fabiano
WebMªster ATI POWER s.n.c.
andr...@atipower.it
http://www.atipower.it
http://www.afdsoftware.freeweb.org
____________________
Collaboratore: 
http://www.jsdir.com
____________________
*¢ L'unica certezza nella vita è che tutto è relativo (per fortuna)¢*

 che non lo fai subito)!!
Mi stai dicendo che NN6 interpreta javascript diversamente da NC 4.5 (č
quello che uso per le prove)? Quindi se prima creavo 2 versioni del sito
(non tutto, solo alcune parti), adesso ne devo creare 3, oppure scrivere
degli script chilometrici per permettere a tutti di navigare?!?
World Wide Web Consortium dove sei ??
P.S.: Grazie per l'esempio, mi č stato utile!
Ciao!
Davide

 Spero di essere stato chiaro! :-)
Ehm, non proprio ma credo piu' che altro di essere io a non starci molto con
la testa oggi.. ^__^;;

 World Wide Web Consortium dove sei ??
Per l'appunto. :)
Vediamo se, almeno su questo punto, riesco ad esserti d'aiuto. :)
Innanzitutto, non preoccuparti adesso.
La versione NN6 che c'e' in giro e' solo una PR... alla versione 2, ma
sempre PR si tratta.
Attualmente NN6 ha troppi bug da fixare, e troppe "vuoti" (la gestione dei
CSS e' quantomeno pessima).
Eventualmente, preoccupati quando sara' realmente e ufficialmente
rilasciato.
Seconda di poi, il "getElementById" che hai visto nell'esempio di atipower,
e' "lo" standard definito dal W3C per l'accesso agli elementi di una pagina
HTML.
Lo implementa anche IE dalla vers 5.0 in poi. :)
Quindi, l'istruzione:
if(document.getElementById && (navigator.appName=='Netscape'){
    document.getElementById('primo').innerHTML ="Pluto";
Puo' essere tradotta in
if(document.getElementById)
    document.getElementById('primo').innerHTML ="Pluto";
Cosi' sara' compatibile su tutti i browser che utilizzano le nuove
specifiche del W3C (IE 5.x e NN6 attualmente).
Per IE 4.0 andra' sempre usato document.all mentre su NS 4.x sara' ancora
differente.

Fermi tutti!!!!!
questo:
<span id="span1" style='position:absolute' >
Funzia sotto netscape????
NN dovrebbe ignorare l'attributo style, no?
però se capisce span... lo posso sostituire al div... e non mi dovrebbe
andare neppure a capo!!!!
altre soluzioni?
P.S.: il problema originario era trovare un metodo con javascript per
modificare una stringa di codice HTML, non la visibilità dell'oggetto!
Intendiamoci:
con IE:
<div id="oggetto">stringa1: da sostituire...</div>
oggetto.innerHTML="stringa2: sostituita!";
con Netscape:
???
???
Grazie e ciao!
Davide

 Grazie e ciao!
De nada.

 </html>
ma lo script non si riferisce ai layers? io avevo messo <layer
id="oggetto".....> ma in effetti non funzionava...
ri: > > Grazie e ciao!

 ri: > > Grazie e ciao!
De nada.


[]

[]

 Forse dalla 5.5 in poi? su 5.0 non funziona (almeno sul mio computer)!
No no, e' dalla 5.0 in poi.
Nemmeno la 5.01, la 5.0..
Prova a fare:
<script>
    alert(document.getElementById)
</script>
Dovrebbe renderti [native code], altrimenti "undefined".
Per completezza, ti dico che la versione di IE su cui l'ho testata e' la:
5.00.2920.0000.
Sappimi dire.

Dovrebbe renderti [native code], altrimenti "undefined".
javascript:alert(document.getElementById)
<INVIO>
finestrella:
"function getElementById(){
	[native code]
}"
confermo (versione 5.50.4134.0600)




 Inoltre, manca completamente nelle MSDN Library che uso.
Se vuoi rimanere aggiornato, soprattutto per quanto riguarda documentazione
su strumenti web, ti conviene usare quella on-line vista la velocita' con
cui mutano tali tecnologie...