non riesco ad agire sulle regole presenti nel foglio si stile con safari utilizzando il document.styleSheets. ho più fogli linkati nella head di cui uno rel="stylesheet" gli altri rel="alternate stylesheet". abitualmente (funziona con ff ie e opera) utilizzavo questo codice:
document.styleSheets[indice].rules[indice2];
con safari non funziona, mi da un errore value error.... in effetti se faccio un alert con document.styleSheets.length con tutti gli altri browser mi visualizza l'effettivo numero dei fogli di stile mentre con safari mi restituisce 1.
ho provato anche ad utilizzare document.styleSheets.item(), ma niente; ogni numero che metto in item mi restituisce sempre e solo il primo foglio di stile presente nell'head dell'html.

come mai?

esiste un alternativa a document.styleSheets per safari?

molte grazie

questo il codice

Codice PHP:
function inizializza_cookie()
{
    var 
i_cookies=document.cookie;
                
    if (
i_cookies.length>0)
    {
                
        var 
css;
        var 
numero_css=0;
        
        
        if (
i_cookies.indexOf("css")!=-1)
        {
            var 
foglio_scelto;
            (
i_cookies.indexOf("alternativo")!=-1) ? foglio_scelto="alternativo" foglio_scelto="default";
            
cambia_css(foglio_scelto);
        }
        
            if (
navigator.userAgent.indexOf("MSIE")<0)
            {
                (
quale_css()=="default") ? css=document.styleSheets[0].rules[0] : css=document.styleSheets[1].rules[0];
            }
            else
            {
                (
quale_css()=="default") ? css=document.styleSheets[0].CssRules[0] : css=document.styleSheets[1].cssRules[0];
            }
        
                    var 
valori=i_cookies.split(";");
            for (var 
i=0;i<valori.length;i++)
            {
                var 
coppia=valori[i].split("=");
                var 
stringa=trim(coppia[0]);
                
                if ((
stringa!="css") && (stringa!="risoluzione"))
                {
                    if (
css.style[stringa]) css.style[stringa]=trim(coppia[1]);
                }
            }
        }