Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di pak0
    Registrato dal
    Dec 2004
    Messaggi
    263

    cambiare css di una pagina ogni 10 minuti

    ciao,
    volevo sapere se è possibile cambiare il css della pagina ogni 10 minuti automaticamente, cioè senza che io ci metta mano???

    grazie in anticipo per le risposte.



  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    99
    Ci possono essere diverse soluzioni.

    quella che mi viene in mente è richiamare ogni 10 minuti una funzione da Body all'interno della quale eseguire il codice che mi cambia gli stili desiderati

    <script>
    function mytime(){
    ..... // codice che cambia gli stili
    ....
    ....
    setTimeout("mytime()",tempo);

    }
    </script>

    <BODY onload="mytime()">

    al posto di tempo devi inserire un valore numerico espresso in millisecondi
    ad es. per 1 minuto = 60 * 1000

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Detto cosi`, no.

    Il CSS deve essere definito PRIMA dei tag cui fanno riferimento, per cui non e` possibile caricarlo dopo.

    Quello che puoi fare e` assegnare una classe diversa ad un tag:

    document.getElementById('ID_OGGETTO').className = 'nomeclasse';

    dove nomeclasse e` precedentemente definito nel CSS.

    L'oggetto a cui cambiare la classe lo devi definire:
    <OGGETTO id="ID_OGGETTO" ...>
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    Utente di HTML.it L'avatar di pak0
    Registrato dal
    Dec 2004
    Messaggi
    263
    scusa, ma nn mi è chiara la seconda spigazione. potresti spigarmelo meglio.
    grazie della pazienza.



    http://www.tones.it/ricarica.asp?ref=pakito

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    99
    Non capisco cosa abbia voluto dire Mich con "detto cosi, no" comunque posto il codice che io intendevo per la gioia di pak0
    Il codice prevede che tu crei due fogli di stile per la tua pagina e il codice pensa ad aggiornare la pagina automaticamente alternando i due stili. In caso di più stili al posto di if si può adoperare switch .... case

    <link href="prova.css" rel="stylesheet" type="text/css">

    <script>
    var contatore=0
    function mytime(){
    stile=document.all.tags("link").item(0);
    if (contatore==0){
    stile.href="prova.css";
    contatore=1;
    } else {
    stile.href="prova1.css";
    contatore=0;
    }

    setTimeout("mytime()",2000);
    }
    </script>
    </head>

    <BODY onload="mytime()">

    </body>

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il mio "detto cosi`, no" era riferito alla domanda iniziale (quando ho postato non avevo ancora visto la risposta di guitar).

    Quello che volevo dire e` che non e` possibile cambiare il CSS a pagina caricata: il CSS va caricato PRIMA del tag che vi fa riferimento.

    Lo script di guitar ha due difetti:
    1. che e` valido solo nel browser IE
    2. che ricarica il CSS, ma non lo applica agli oggetti caricati nella pagina.

    Io farei una cosa di questo tipo:
    codice:
    var cont = 0;
    function mytime(){
      document.getElementById('tutto').className = 'stil'+cont;
      cont = (cont==0) ? 1 : 0 ;
    
      setTimeout("mytime()",2000);
    }
    La pagina dovra` essere strutturata in modo da avere all'interno del <body> un <div id="tutto"> che comprende tutto cio` che si vuole cambi stile. naturalmente eventuali oggetti intrni, dovranno avere le proprieta` interessate poste a inherit.

    I due stili (da definire nel CSS della head) dovranno chiamarsi:
    .stile0 { ... }

    .stile1 { ... }
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    99
    Ciao Mich ci risentiamo.

    Quello che tu dici in questo caso è vero. Il codice funziona solo su IE.

    Il punto: è lodevole la tua ricerca di utilizzare un codice più generalizzabile possibile.

    Ma tu sai molto bene, perchè ti reputo molto bravo, per non sapere che in assoluto non esiste un codice che vada bene per tutto.
    Spesso bisogna fare delle scelte ed è innegabile che almeno in Italia la maggioranza degli utenti utilizzi ancora IE.
    Anche se, per fortuna, NN, Mozilla e Opera cominciano a farsi un po più di strada. Ma siamo ancora distanti da traguardi definibili "decenti" rispetto appunto a IE.

    Non avendo dunque pak0 specificato il suo target, ho pensato a IE.

    E mi sembra che pak0 nel suo ultimo messaggio ha ringraziato, presumo che con il codice fornitogli abbia, almeno mi auguro, risolto il suo problema.

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non possiamo noi avvallare il brutto vizio di usare codice proprietario perche` tanto in IE funziona.
    Dobbiamo cercare di proporre codice valido. Esiste uno standard: affidiamoci a quello.
    Altrimenti tra due anni ci troveremo pieni di messaggi che dicono: questo script che fino a ieri funzionava ora non va piu`: colpa di questo o quel browser?
    Tra l'altro la prossima versione di IE (la 7) non potra` essere tanto permissiva come le precedenti, altrimenti la Microsoft si trovera` spiazzata.

    Comunque il tuo discorso fa acqua anche perche` in questi ultimi mesi FireFox ha avuto un boom enorme. E FF segue gli standard.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.