Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[JS] Co zrobić aby funkcja odświeżała się

Thomas1988 31 Sie 2010 22:03 2155 3
  • #1 31 Sie 2010 22:03
    Thomas1988
    Poziom 16  

    Chcę do tego wykorzystać SetInterval niestety coś mi to nie działa.

    Code:
    <script type="text/javascript" language="JavaScript">
    
    <!--

    SetInterval(Odswiezanie(), 1000);
      -->
    </script>

    Wpisuję coś takiego i niestety ciągle wyskakuje błąd. Proszę o pomoc.

    Dokładnie chciałbym aby ta funkcja wykonywała się co sekundę

    Code:
    var nazwy_mies = [ 'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 
    
        'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik',
        'Listopad', 'Grudzień' ];

        var nazwy_dni = [ 'Niedziela', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek',
        'Piątek', 'Sobota'];

       var data = new Date();
       var dzien2 = data.getDay();
       var rok = data.getFullYear();
       var mies = data.getMonth();
       var dzien = data.getDate();
       var godz = data.getHours();
       var minu = data.getMinutes();
       var sec = data.getSeconds();
     

       var data_i_czas = nazwy_dni[dzien2] + ' ' + dzien + ' ' + nazwy_mies[mies] + ' ' + rok
        + ', ' + godz + ':' + minu + ':' + sec;


    Proszę pamiętać o używaniu znaczników code. - arnoldziq

    0 3
  • #2 31 Sie 2010 23:43
    marcinj12
    Poziom 40  

    Kolejny przykład:

    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>

    <script type="text/javascript" language="JavaScript">
    function Odswiezanie()
    {
       var nazwy_mies = [ 'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj',
       'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik',
       'Listopad', 'Grudzień' ];

       var nazwy_dni = [ 'Niedziela', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek',
       'Piątek', 'Sobota'];

       var data = new Date();
       var dzien2 = data.getDay();
       var rok = data.getFullYear();
       var mies = data.getMonth();
       var dzien = data.getDate();
       var godz = data.getHours();
       var minu = data.getMinutes();
       var sec = data.getSeconds();


       var data_i_czas = nazwy_dni[dzien2] + ' ' + dzien + ' ' + nazwy_mies[mies] + ' ' + rok
       + ', ' + godz + ':' + minu + ':' + sec;
       document.title = data_i_czas;
    }

    setInterval("Odswiezanie();", 1000);
    </script>
    </head>
    <body>

    0
  • #3 01 Wrz 2010 13:28
    Thomas1988
    Poziom 16  

    Niestety nie działa to tak jak bym chciał może podpowiesz mi jak zrobić żeby umieścić w jednym miejscu tą funkcję i żeby był pokazywany aktualny czas ?
    Jakie zrobić odwołanie w body aby czas odświeżany co sekundę było pokazywany w określonym miejscu ?

    Code:

    <html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
    <script type="text/javascript" language="JavaScript">
     function Odswiezanie()

     {
        var nazwy_mies = [ 'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj',
        'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik',
        'Listopad', 'Grudzień' ];

        var nazwy_dni = [ 'Niedziela', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek',
        'Piątek', 'Sobota'];

       var data = new Date();
       var day = data.getDay();
       var rok = data.getFullYear();
       var mies = data.getMonth();
       var dzien = data.getDate();
       var godz = data.getHours();
       var minu = data.getMinutes();
       var sec = data.getSeconds();
     

       var data_i_czas = nazwy_dni[day] + ' ' + dzien + ' ' + nazwy_mies[mies] + ' ' + rok
        + ', ' + godz + ':' + minu + ':' + sec;
        return data_i_czas;
       
    }

    </script>
    </head>
    <body>

    <script type="text/javascript" language="JavaScript">
    document.write(Odswiezanie());

    </script>
    </body>
    </html>


    Zrobiłem coś takiego i ładnie pokazuje godzinę tylko nie wiem gdzie wsadzić to SetInterval. Gdy umieszczę tam gdzie ty masz to wyskakuje mi cały czas błąd.

    0
  • Pomocny post
    #4 01 Wrz 2010 13:38
    marcinj12
    Poziom 40  

    OK, w takim wypadku, żeby nie odświeżać strony co sekundę, zrób np. tak:

    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
    <script type="text/javascript" language="JavaScript">
     function Odswiezanie()
     {
        var nazwy_mies = [ 'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj',
        'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik',
        'Listopad', 'Grudzień' ];

        var nazwy_dni = [ 'Niedziela', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek',
        'Piątek', 'Sobota'];

       var data = new Date();
       var day = data.getDay();
       var rok = data.getFullYear();
       var mies = data.getMonth();
       var dzien = data.getDate();
       var godz = data.getHours();
       var minu = data.getMinutes();
       var sec = data.getSeconds();
     
       var data_i_czas = nazwy_dni[day] + ' ' + dzien + ' ' + nazwy_mies[mies] + ' ' + rok
        + ', ' + godz + ':' + minu + ':' + sec;
       
       document.getElementById("czas").innerHTML = data_i_czas;
    }

      setInterval("Odswiezanie();", 1000);
    </script>
    </head>
    <body>

    <p id="czas"></p>

    </body>
    <body>


    PS. Jeżeli robisz zegar, to może lepiej liczby < 10 wyświetlać z zerem na początku? Zobacz tutaj: http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_datetime

    0