Newsgroup: it.comp.lang.javascript
Titolo: Dom style su IE non funziona

text1.setAttribute("style", "background-color:blue; color:#3333FF;
font-size:10px; font-weight:bold;" );
su IE non funziona lo style;
si puo' risolvere?



http://www.quirksmode.org/bugreports/archives/2005/03/setAttribute_does_not_work_in_IE_when_used_with_th.html
-- 
"Non sai che ci vuol scienza
 ci vuol costanza
 ad invecchiare senza maturità"
									    F.G.

 
http://www.quirksmode.org/bugreports/archives/2005/03/setAttribute_does_not_work_in_IE_when_used_with_th.html
spiega bhene anche se forse troppe soluzioni
sarei orientato su questa
One important exception is class; in Mozilla you can do this (as you would
expect) :
panel.setAttribute("class", "iWindow");
but in IE you have to do this:
panel.setAttribute("className", "iWindow");
quindi scrivere i codici per i 2 browser;
quest'altra è simile, credo che riconosca IE; 
element.setAttribute((document.all ? ‘className’ : ‘class’), “somename”);
ma non funziona su opera;
quindi credo la prima vada bene; ma su IE 7 ultima versione; sui vari Ie
per mac, su konqueror etc. eventuali altri browser diffusi oltre ai soliti?
inoltre essendo due righe di codice ripetute ci possono esere eventuali
problemi per versioni future dei browser più diffusi?

 panel.setAttribute("className", "iWindow");
e perché mai non usare direttamente panel.className="iWindow"; che č
compatibile con tutti?
-- 
"e mai che mi sia venuto in mente
 di essere piů ubriaco di voi
 di essere molto piů ubriaco di voi"
									  F.D.A.

 compatibile con tutti?
in effetti funziona su tutti;
ma è uno standard?
inoltre visto che il non uso di setAttribute in questo caso sembra essere 
+ compatibile con i browser, conviene non usarlo anche per le altre
proprietà tipo
 panel.setAttribute("type","text");
 panel.setAttribute("id","idx"+ count);    
panel.setAttribute("name","namex"+ count);
?
pero' che parole alternative cross-browser usare? cioè
className al posto di class e per gli altri: type, id, name ? 
oppure class è un'eccezione?
--

 oppure class è un'eccezione?
la seconda che hai detto
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.

se non ho capito male non usi setattribute;
ma c'è documentazione ufficiale che spiega come va poi scritto il codice ;
ad esempio
var panel1 = document.createElement( "input" );
panel1.setAttribute("type","text");
panel1.setAttribute("id","pippo"+ counter);
si potrebeb anche scrivere
var panel1 = document.createElement( "text" );
panel1.id
=("pippo"+ counter);
senza neanche usare il type ?
------------
Altro:
su una csella di testo standard ho questo
onclick="this.blur();"
è possibile avere tale codice su quelle create a volo?
ho scritto cosi' ma non funziona:
panel.onclick=function(){this.blur();};

se non ho capito male quindi non usi setattribute;
ma c'è documentazione ufficiale che spiega come va poi scritto il codice
con ad esempio le eccezzioni da usare tipo il class da scrivere con
classname?
e questo quindi
var panel1 = document.createElement( "input" );
panel1.setAttribute("type","text");
panel1.setAttribute("id","pippo"+ counter);
si potrebeb anche scrivere
var panel1 = document.createElement( "text" );
panel1.id
=("pippo"+ counter);
senza neanche usare il type ?
------------
Altro:
su una csella di testo standard ho questo
onclick="this.blur();"
è possibile avere tale codice su quelle create a volo?
credo sia corretto scrivere cosi:
panel.onclick=function(){this.blur();};
mi accorgo ora che su IE non funziona non tanto su quelle a volo ma proprio
sulla casella di text standard (non ci avevo mai fatto caso)
era se non ricordo male era suggerito di usare insieme a readonly
credo per maggiore protezione di non far modificare il testo;
ti risulta che è preferibile e che vantaggi dà; solo che su IE non funziona 

 ti risulta che è preferibile e che vantaggi dà; solo che su IE non funziona
cosa? readonly o disabled non fanno modificare il testo; attenzione che
disabled non invia il text con la form.
-- 
"Affacciati affacciati benedici, guardaci
 guardaci...guardaci!
 Tanto sono quasi duemila anni che stai a guardare!"
									    E.B.

 disabled non invia il text con la form.
onclick="this.blur();"
dovrebbe al click far perdere il focus quindi se non ricordo male integra
il readonly che non sopportato da tutti
; forse vecchie versioni di netscape o altri;
ora this.blur su IE non funziona, ma il problema comunque non esiste
poiche funziona readonly;