• User

    Far scomparire un banner a risoluzioni browser basse

    Non so se qualcuno di voi ha mai visitato il webclient email di yahoo, comunque ho notato che ha un banner a lato che scompare se con la combinazione [ctrl] [+] si diminuisce la risoluzione della pagina visualizzata. Questo è utilissimo per inserire banner pubblicitari su schermi molto ampi e per farli sparire se l'utente sta utilizzando uno schermo di bassa risoluzione.

    Ho già fatto diverse ricerche su google, arrivando alla conclusione che il codice seguente sarebbe dovuto funzionare.

    <script type="text/javascript">
        
        if (screen.**availWidth**<=800) //se la fetta di schermo disponibile è di 800px o inferiore
     document.body.style.background="#ff0000" //background rosso
        else
     document.body.style.background="#0000ff" //background blu
        
        </script>
    ```Inserito in un file html di prova:
    

    <html>
    <head>
    <title>JS - Cambia il background a seconda della risoluzione</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body bgcolor="#FFFFFF" text="#000000">
    Testo di riferimento per la dimensione dello schermo

    <script type="text/javascript">
    if (screen.availWidth<=800) //se la fetta di schermo disponibile in larghezza è di 800px o inferiore
    document.body.style.background="#ff0000" //background rosso
    else
    document.body.style.background="#0000ff" //background blu
    </script>

    </body>
    </html>

    dove sbaglio?
    Esiste qualche altro metodo che fa scomparire un <div> per caso?
    Ringrazio in anticipo per qualsiasi risposta.

  • ModSenior

    Potresti mettere magari un timer che effettui quel controllo?

    Ancora meglio magari la funzione nel OnResize nel body?


  • User Attivo

    Prova ad usare il metodo screen.width di Javascript nativo.


  • User Attivo

    E prova ad assegnare il valore con = invece che con <=, cioè:

    screen.width=800

    Così assegni allo script il valore esatto di 800 px in larghezza.


  • User Attivo

    Per DIV basta il CSS display: none;