Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Автоматическая установка даты отсчета в счетчике. (http://forum.oszone.net/showthread.php?t=265971)

Андрей_Угаров@vk 11-08-2013 17:14 2199972

Автоматическая установка даты отсчета в счетчике.
 
Здравствуйте.
Необходимо сделать чтобы счетчик начинал свой отчет в 10.00 и отсчитывал время до 22.00 (т.е. с 22.00 до 10.00 он будет показывать нули)

Думаю реализовать таким образом:
в 10.00 запускается php скрипт который увеличивает значение на единицу(значение даты сохранено в файле txt)

Только я незнаю как в javascript прочитать значение из txt файла.

Вот код счетчика( дата и время до которого идет отсчет в самом начале кода):
HTML код:

<script type="text/javascript">
                                // page init
jQuery(function(){
        get_timer();
});
                               
        function get_timer(){
       
        var Month = "August";
        var Day = "10";
        var Year = "2013";
        var Hours = "22";
       
        var date_new = Month + Day + "," + Year + " "+Hours+":09";
        ////////////////////////////////////
        ////////////////////////////////////
        //Объект даты для обратного отсчета
        var date_t = new Date(date_new);
        //Объект текущей даты
        var date = new Date();
        //Вычесляем сколько миллисекунд пройдет
        //от текущей даты до даты отсчета времени
        var timer = date_t - date;
        //Проверяем не нужно ли закончить отсчет
        //если дата отсчета еще не истекла, то количество
        //миллисекунд в переменной date_t будет больше чем в переменной date
        if(date_t > date) {
        //Вычисляем сколько осталось дней до даты отсчета.
        //Для этого количество миллисекунд до даты остчета делим
        //на количество миллисекунд в одном дне
        var day = parseInt(timer/(60*60*1000*24));
        //если полученное число меньше 10 прибавляем 0
        if(day < 10) {
        day = '0' + day;
        }
        //Приводим результат к строке
        day = day.toString();
        //Вычисляем сколько осталось часов до даты отсчета.
        //Для этого переменную timer делим на количество
        //миллисекунд в одном часе и отбрасываем дни
        var hour = parseInt(timer/(60*60*1000))%24;
        //если полученное число меньше 10 прибавляем 0
        if(hour < 10) {
        hour = '0' + hour;
        }
        //Приводим результат к строке
        hour = hour.toString();
        //Вычисляем сколько осталось минут до даты отсчета.
        //Для этого переменную timer делим на количество
        //миллисекунд в одной минуте и отбрасываем часы
        var min = parseInt(timer/(1000*60))%60;
        //если полученное число меньше 10 прибавляем 0
        if(min < 10) {
        min = '0' + min;
        }
        //Приводим результат к строке
        min = min.toString();
        //Вычисляем сколько осталось секунд до даты отсчета.
        //Для этого переменную timer делим на количество
        //миллисекунд в одной минуте и отбрасываем минуты
        var sec = parseInt(timer/1000)%60;
        //если полученное число меньше 10 прибавляем 0
        if(sec < 10) {
        sec = '0' + sec;
        }
        //Приводим результат к строке
        sec = sec.toString();
        //Выводим дни
        //Проверяем какие предыдущие цифры времени должны вывестись на экран
        //Для десятков дней
        if(day[1] == 9 &&
        hour[0] == 2 &&
        hour[1] == 3 &&
        min[0] == 5 &&
        min[1] == 9 &&
        sec[0] == 5 &&
        sec[1] == 9) {
        animation(jQuery(".day0"),day[0]);
        }
        else {
        jQuery(".day0").html(day[0]);
        }
        //Для единиц дней
        if(hour[0] == 2 &&
        hour[1] == 3 &&
        min[0] == 5 &&
        min[1] == 9 &&
        sec[0] == 5 &&
        sec[1] == 9) {
        animation(jQuery(".day1"),day[1]);
        }
        else {
        jQuery(".day1").html(day[1]);
        }
        //Выводим часы
        //Проверяем какие предыдущие цифры времени должны вывестись на экран
        //Для десятков часов
        if(hour[1] == 3 &&
        min[0] == 5 &&
        min[1] == 9 &&
        sec[0] == 5 &&
        sec[1] == 9) {
        animation(jQuery(".hour0"),hour[0]);
        }
        else {
        jQuery(".hour0").html(hour[0]);
        }
        //Для единиц чассов
        if(min[0] == 5 &&
        min[1] == 9 &&
        sec[0] == 5 &&
        sec[1] == 9) {
        animation(jQuery(".hour1"),hour[1]);
        }
        else {
        jQuery(".hour1").html(hour[1]);
        }
        //Выводим минуты
        //Проверяем какие предыдущие цифры времени должны вывестись на экран
        //Для десятков минут
        if(min[1] == 9 &&
        sec[0] == 5 &&
        sec[1] == 9) {
        animation(jQuery(".min0"),min[0]);
        }
        else {
        jQuery(".min0").html(min[0]);
        }
        //Для единиц минут
        if(sec[0] == 5 && sec[1] == 9) {
        animation(jQuery(".min1"),min[1]);
        }
        else {
        jQuery(".min1").html(min[1]);
        }
        //Выводим секунды
        //Проверяем какие предыдущие цифры времени должны вывестись на экран
        //Для десятков секунд
        if(sec[1] == 9) {
        animation(jQuery(".sec0"),sec[0]);
        }
        else {
        jQuery(".sec0").html(sec[0]);
        }
        animation(jQuery(".sec1"),sec[1]);
        //Периодически вызываем созданную функцию,
        //интервал вызова одна секунда(1000 милли секунд)
        setTimeout(get_timer,1000);
        }
        else {
        jQuery(".clock").html();
        };

        //Функция для красивого отображения времени.
        function animation(vibor,param) {
                vibor.html(param)
                .css({'marginTop':'-20px','opacity':'0'})
                .animate({'marginTop':'0px','opacity':'1'});
        };
}
//Вызываем функцию на исполнение
                                </script>

                                        <div class="clock">
                                                <div class='day dash days_dash'>
                                                        <div class='day0 ptaimer digit'>0</div>
                                                        <div class='day1 ptaimer digit'>0</div>
                                                </div>
                                                <div class='hour dash hours_dash'>
                                                        <div class='hour0 ptaimer digit'>0</div>
                                                        <div class='hour1 ptaimer digit'>0</div>
                                                </div>
                                                <div class='min dash minutes_dash'>
                                                        <div class='min0 ptaimer digit'>0</div>
                                                        <div class='min1 ptaimer digit'>0</div>
                                                </div>
                                                <div class='sec dash seconds_dash'>
                                                        <div class='sec0 ptaimer digit'>0</div>
                                                        <div class='sec1 ptaimer digit'>0</div>
                                                </div>
                                        </div>

                                                        </div>

Как прочитать значения var Month = ""; var Day = "";var Year = "";var Hours = ""; из текстовых файлов?
Или есть более изящное решение.
Заранее благодарен


Время: 20:06.

Время: 20:06.
© OSzone.net 2001-