Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Conto alla rovescia e refresh a tempo scaduto

    Salve,
    all'interno del forum ho trovato un utente che chiedeva informazioni su un conto alla rovescia, utilizzando quello script e prendendo le variabili dinamicamente in php mi sono trovato benissimo.
    mi chiedevo (perchè di javascript non ne capisco assolutamente nulla), si può aggiungere un refresh della pagina allo scadere del conto alla rovescia?
    il codice è questo

    codice:
    function countdown_clock(year, month, day, hour, minute, format)
             {
             //I chose a div as the container for the timer, but
             //it can be an input tag inside a form, or anything
             //who's displayed content can be changed through
             //client-side scripting.
             html_code = '<div id="countdown"></div>';
             
             document.write(html_code);
             
             countdown(year, month, day, hour, minute, format);                
             }
             
    function countdown(year, month, day, hour, minute, format)
             {
             Today = new Date();
             Todays_Year = Today.getFullYear();
             Todays_Month = Today.getMonth();                  
             
             //Convert both today's date and the target date into miliseconds.                           
             Todays_Date = (new Date(Todays_Year, Todays_Month, Today.getDate(), 
                                     Today.getHours(), Today.getMinutes(), Today.getSeconds())).getTime();                                 
             Target_Date = (new Date(year, month - 1, day, hour, minute, 00)).getTime();                  
             
             //Find their difference, and convert that into seconds.                  
             Time_Left = Math.round((Target_Date - Todays_Date) / 1000);
             
             if(Time_Left < 0)
                Time_Left = 0;
             
             var innerHTML = '';
             
             switch(format)
                   {
                   case 0:
                        //The simplest way to display the time left.
                        innerHTML = Time_Left + ' seconds';
                        break;
                   case 1:
                        //More datailed.
                        days = Math.floor(Time_Left / (60 * 60 * 24));
                        Time_Left %= (60 * 60 * 24);
                        hours = Math.floor(Time_Left / (60 * 60));
                        Time_Left %= (60 * 60);
                        minutes = Math.floor(Time_Left / 60);
                        Time_Left %= 60;
                        seconds = Time_Left;
                        
                        dps = 'i'; hps = 'e'; mps = 'i'; sps = 'i';
                        //ps is short for plural suffix.
                        if(days == 1) dps ='o';
                        if(hours == 1) hps ='a';
                        if(minutes == 1) mps ='o';
                        if(seconds == 1) sps ='o';
                        
                        innerHTML = days + ' giorn' + dps + ' ';
                        innerHTML += hours + ' or' + hps + ' ';
                        innerHTML += minutes + ' minut' + mps + ' e ';
                        innerHTML += seconds + ' second' + sps;
                        break;
                   default: 
                        innerHTML = Time_Left + ' seconds';
                   }                   
                        
                document.getElementById('countdown').innerHTML = innerHTML;     
                   
             //Recursive call, keeps the clock ticking.
             setTimeout('countdown(' + year + ',' + month + ',' + day + ',' + hour + ',' + minute + ',' + format + ');', 1000);
             }
    grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    cambia
    if(Time_Left < 0)
    Time_Left = 0;

    in
    if(Time_Left < 0){
    Time_Left = 0;
    self.location.href="altraPagina.php"
    }

    ciao

  3. #3
    l'ho modificato così, perche vorrei un semplice refresh della pagina, ma non funziona.

    if(Time_Left < 0){
    Time_Left = 0;
    window.opener.location.reload();
    }


  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    l' istruzione viene eseguita di certo
    piuttosto, sicuro di quel window.opener?

    se e' la stessa finestra rimuovi .opener

    ciao

  5. #5
    Funziona grazie

  6. #6
    Xinod spero tu sia ancora iscritto a questo topic....cmq magari qualcun'altro puo aiutarmi....

    ho l'esigenza di utlizzare questo script su una pagina dinamica in php e dovrà apparire più volte....

    in questo modo mi visualizza solamente il primo....

    si potrebbe fare in modo che prenda l'id del div dove lo script va a scrivere il conto alla rovescia in maniera dinamica dalla pagina php? in modo che appaia su un div diverso per ogni "apparizione"?

    Spero mi possiate aiutare. grazie

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.