• Moderatore

    Javascript non funzionante solo con IE e Safari

    Salve,
    utilizzo un javascript che riconosce la risoluzione video dell'utente ed in base a questa carica un foglio di stile differente.

    Ovviamente questo trick poteva funzionare con IE?

    Caso strano non funziona nemmeno con Safari.

    Vi copio il codice nella speranza che mi sapiiate dare una mano.

    
    var s_width =''; 
    var s_height =''; 
    s_width=screen.width 
    s_height=screen.height 
    
    
    
    
    // dynamicLayout by Kevin Hale
    function dynamicLayout(){
        var browserWidth = s_width;
        
        //LOAD 1024 THEME
        if ((browserWidth > "960") && (browserWidth <= "1280")){
            changeLayout("mid");
        }
        
        //Load Wider CSS Rules
        if (browserWidth >= "1280"){
            changeLayout("wide");
        }
        
    }
    
    // changeLayout is based on setActiveStyleSheet function by Paul Sowdon 
    // http://www.alistapart.com/articles/alternate/
    function changeLayout(description){
       var i, a;
       for(i=0; (a = document.getElementsByTagName("link")*); i++){
           if(a.getAttribute("title") == description){a.disabled = false;}
           else if(a.getAttribute("title") != "default"){a.disabled = true;}
       }
    }
    
        //addEvent() by John Resig
        function addEvent( obj, type, fn ){ 
           if (obj.addEventListener){ 
              obj.addEventListener( type, fn, false );
           }
           else if (obj.attachEvent){ 
              obj["e"+type+fn] = fn; 
              obj[type+fn] = function(){ obj["e"+type+fn]( window.event ); } 
              obj.attachEvent( "on"+type, obj[type+fn] ); 
           } 
        } 
        
        //Run dynamicLayout function when page loads and when it resizes.
        addEvent(window, 'load', dynamicLayout);
        addEvent(window, 'resize', dynamicLayout);
    
     
    
    ```Ammetto di essere un novellino in materia e di aver preso lo script già fatto, io gli ho solo apportato qualche lieve modifica.