Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Проблема с таймером, нет обновления (http://www.flasher.ru/forum/showthread.php?t=140524)

in4core 01.06.2010 17:22

Проблема с таймером, нет обновления
 
Код AS1/AS2:

var DATE:Date = new Date(2000, 4, 10, 0, 0, 0, 0);
function timer() {
        var sec = DATE.getSeconds();
        var min = DATE.getMinutes();
        var hour = DATE.getHours();
        trace(sec);
        if (sec < 10) {
                sec = "0" + sec;
        }
        if (min < 10) {
                min = "0" + min;
        }
        if (hour < 10) {
                hour = "0" + hour;
        }
        tf_timer.text = hour+":"+min+":"+sec;
}
var ff = setInterval(this,"timer",1000);

С ккаждым циклом : минуты, секунды , часы все равно 0. Тоесть счет далее не идет. почему?

udaaff 01.06.2010 17:27

Код AS1/AS2:

function timer() 
{
  var date = new Date();
  var sec = date.getSeconds();
  var min = date.getMinutes();
  var hour = date.getHours();
...


iNils 01.06.2010 17:36

Код AS1/AS2:

function timer () {
        tf_timer.text = new Date ().toString ().split (" ")[3];
}


in4core 01.06.2010 17:48

Удав вы не правы. Моя задача немного иная, мне не нужна сегодняшняя дата, мне нужна левая дата, с 0 значения часов минут и секунд. Обычный таймер.

to Inils а что это даст? Конструкция немного непонятна. Хотя понял, но это опять про сегодняшную дату. Мне же нужно начинать все с 0

iNils 01.06.2010 17:57

Код AS1/AS2:

function timer () {
        tf_timer.text = new Date(2000, 4, 10, 0, 0, -1, getTimer () - cx).toString().split(" ")[3];
}
var cx:Number = getTimer ();
var ff:Number = setInterval (this, "timer", 1000);


in4core 01.06.2010 18:04

Спасибо большое. Если можно объясните конструкцию.

udaaff 01.06.2010 18:05

in4core, когда я отвечал, по-моему, первой строки еще не было в вашем коде.

iNils 01.06.2010 18:23

При приведении даты в String мы поулчаем
Код:

Wed May 10 00:00:00 GMT+0400 2000
как видите, там уже есть готовая конструкция hh:mm:ss, нужно только ее достать. Методом split мы разбиваем строку по пробелам в массив и берем 4 элемент с начала.

in4core 01.06.2010 19:09

Клево, оч интересно и доходчиво. Только вот все равно непонятно как из Даты массив сделался, пока что такие секреты у меня в голове не укладываются...

to udaff - да возможно ты прав, я менял сообщение, наверное в тот момент когда ты писал. сорри тогда

rainbowrussia 02.06.2010 04:34

Цитата:

Сообщение от in4core (Сообщение 912333)
Только вот все равно непонятно как из Даты массив сделался

Сначала из даты получилась строка - .toString(), затем из строки получился массив (разбиение по пробелу) .split(" "), далее взятие элемента массива с номером [n].


Часовой пояс GMT +4, время: 18:19.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.