Newsgroup: it.comp.lang.javascript
Titolo: Ajax e Css

Ciao a tutti,
ho un sito basato su un file css, e alcune parti caricate tramite AJAX che 
si basano sullo stesso file CSS.
Se dalla pagina principale modifico una proprietà del CSS percé quando 
carico con ajax una pagina che la usa la vedo senza modifica ?
Per esempio, nel file CSS ho il testo impostato su rosso, lo cambio via 
javascript in verde e nel sito è verde, se carico una porzione di pagina 
tramite ajax (cambio il contenuto di un div) il testo caricato è rosso e non 
verde ...
:-)
Grazie mille
        Bruce 

 non verde ...
Perche` quello che modifichi con js non e` il css, ma lo stile inline 
degli elementi. Quando carichi un pezzo di html via ajax e lo metti sulla 
pagina, lui prende lo stile dal css che il browser ha caricato.
Dovresti modificare anche il suo in verde prima di farlo apparire sulla 
pagina.
Bye.

 carico con ajax una pagina che la usa la vedo senza modifica ?
modifichi direttamente il css quindi? del tipo
 
http://www.criosoftware.it/default23.aspx
?
Perché se stai modificando il valore di una proprietà, questa si modifica
solo per le proprietà di quell'oggetto ...
-- 
"e mai che mi sia venuto in mente
 di essere più ubriaco di voi
 di essere molto più ubriaco di voi"
									  F.D.A.

 solo per le proprietà di quell'oggetto ...
Uso esattamente quello, e precisamente getStyleSheetByTitle.
Devo comunque fare la modifica anche per ogni paagina caricata con Ajax 
oppure sto sbagliando qualche cosa ?
Ciao e grazie mille
        Bruce 

 oppure sto sbagliando qualche cosa ?
mai provato ... a logica, se scrivi con innerHTML o simili dovrebbe
applicarlo. Come "usi" il risultato restituito da xmlhttp? Come lo
inserisci nella pagina?
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.

 inserisci nella pagina?
Allora io uso questo medoto per cambiare la dimensione dei font
*********************************************************
function resizeCssFont(titolo,classe)
{
  //alert('#INIZIO titolo ' + titolo + ' classe ' + classe)
  var css = document.getStyleSheetByTitle(titolo).getRule(classe).style;
  size = String(css.fontSize);
 unita = size.substring(size.length-2,size.length);
 size = size.substring(0,size.length-2);
 size = String(size / originalHeight * height) + unita;
 css.fontSize = size;
 //alert('#FINE titolo ' + titolo + ' classe ' + classe)
}
**********************************************************
mentre per caricare il file html esterno uso ...
**********************************************************
function loadpage(page_request, containerid,url){
 if (page_request.readyState == 4 && (page_request.status==200 || 
window.location.href.indexOf("http")==-1))
 {
  document.getElementById(containerid).innerHTML=page_request.responseText;
  theDiv=document.getElementById(containerid);
  theScripts=theDiv.getElementsByTagName("SCRIPT");
  for (i=0;i<theScripts.length;i++){
   url=(theScripts[i].getAttribute("src"));
   var scriptToLoad = document.createElement("script");
   scriptToLoad.src = url;
   scriptToLoad.type="text/javascript";
   document.getElementsByTagName("head")[0].appendChild(scriptToLoad);
   theDiv.removeChild(theScripts[i]);
  }
  caricata = 1;
 }
}
**********************************************************
Che è il metodo classico spiegato in ogni guida :-)
Se sbaglio qualche cosa ... dimmelo :-(
Ciao
           Bruce 

   document.getElementById(containerid).innerHTML=page_request.responseText;
e quanto sopra invece non funziona?
-- 
"Ho smesso di fumare.
 Vivrò una settimana di più.
 E in quella settimana pioverà a dirotto"
									    W.A.

Sono un somaro io :-D
In una pagina di quelle importate ho lasciato i tag <html><body> ... e 
dulcis in fundo ... <link rel="stylesheet"> :-P
Ciao e grazie mille lo stesso
          Bruce