Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 27.07.2015, 19:40
Аватар для Sigizmund2012
Профессор
Отправить личное сообщение для Sigizmund2012 Посмотреть профиль Найти все сообщения от Sigizmund2012
 
Регистрация: 16.07.2014
Сообщений: 267

Сообщение от рони
нафига ajax и прочая лабуда?
Через ajax я получаю текущую дату и обрабатываю её на клиенте. PHP не знаю, поэтому рассчитать количество секунд не могу, но даже если б мог, всё равно ajax нужен для запроса к серверу. Или вы что-то типа $.get() имели ввиду? Это ж всё равно ajax, просто синхронный.
Ответить с цитированием
  #12 (permalink)  
Старый 27.07.2015, 20:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Sigizmund2012,
ненужен запрос совсем достаточно распечатать число при первоначальной отдаче страницы - сам не знаю php

что то типа
$('#countdown').timeTo({
seconds: echo (date("s") - date("s")) ,
displayDays: 2

})
Ответить с цитированием
  #13 (permalink)  
Старый 27.07.2015, 20:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Sigizmund2012, для медитации
PHP. Сколько дней/часов/минут/секунд осталось до указанного события.
Ответить с цитированием
  #14 (permalink)  
Старый 28.07.2015, 04:45
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

По опыту, наилучшее, отдавать сервером скрипт-переменную: Гринвич-время(в секундах) отдачи страницы севером.
Тады простенький таймер на странице позволяет отсчитывать всякие фичи до нужных событий.
Для полного кайфа отдают переменной и тайм зону текущего юзера(типично она настраивается юзером в профиле)
Ответить с цитированием
  #15 (permalink)  
Старый 28.07.2015, 09:06
Аватар для Sigizmund2012
Профессор
Отправить личное сообщение для Sigizmund2012 Посмотреть профиль Найти все сообщения от Sigizmund2012
 
Регистрация: 16.07.2014
Сообщений: 267

Сообщение от рони
ненужен запрос совсем достаточно распечатать число при первоначальной отдаче страницы
Я изначально так и сделал, но в консоль ошибка дропнулась, что скобки не хватает у аргумента new Date, я решил что это с php проблема какая-то и сделал через ajax. Оказалось просто блок php надо в кавычки закрыть, окончательный код такой:
var today = new Date( '<?php echo date("c"); ?>' );
	var currentDay = today.getDay();
	var currentHours = today.getHours();
	var timeToEndAction;
	var arr = [5,4,3,2,1,7,6];
	timeToEndAction = new Date(new Date(new Date(new Date().setDate(today.getDate()+( (currentDay === 5 && currentHours < 1 ) ? 0 : arr[currentDay] ))).setHours(1)).setMinutes(0)).setSeconds(0);
	$('#countdown').timeTo( {
		timeTo: new Date(timeToEndAction),
		displayDays: 2
	} );
Ответить с цитированием
  #16 (permalink)  
Старый 28.07.2015, 10:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Сообщение от Deff
Тады простенький таймер на странице позволяет отсчитывать всякие фичи до нужных событий.
нафига если сервер может сделать этоже самое при отдаче страницы - но дело ваше раз хотите на клиенте вычислять
Ответить с цитированием
  #17 (permalink)  
Старый 28.07.2015, 10:55
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

рони,
У сервера отдача плюс/минус полминуты, если тьву нужно запускать ровно в 9:00, (К примеру так у меня лотерейка запускается на пять мин)
То проще от получения странице сходу вычислить нужную поправку и запустить свой более точный таймер в нужное время от текущего, а серв еще может страницу и не отдать, а так работаем с чем есть
Ответить с цитированием
  #18 (permalink)  
Старый 28.07.2015, 11:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

надо то всего php программисту глянуть, всё ли верно
<script>
    $(function() {
       $("#countdown").timeTo({
    seconds: <?php
    ini_set('display_errors', 'Off');
    $a = strtotime("now");
    $b = strtotime("next Friday 1 hours 0 seconds");
    echo ($b - $a);

?>,
        displayDays: 2,
        theme: "white",
        displayCaptions: !0,
        fontSize: 48,
        captionSize: 14,
        lang: "ru"
    })
});
  </script>

Последний раз редактировалось рони, 28.07.2015 в 11:32.
Ответить с цитированием
  #19 (permalink)  
Старый 31.07.2015, 11:28
Аватар для Sigizmund2012
Профессор
Отправить личное сообщение для Sigizmund2012 Посмотреть профиль Найти все сообщения от Sigizmund2012
 
Регистрация: 16.07.2014
Сообщений: 267

Сообщение от рони Посмотреть сообщение
надо то всего php программисту глянуть, всё ли верно
<script>
    $(function() {
       $("#countdown").timeTo({
    seconds: <?php
    ini_set('display_errors', 'Off');
    $a = strtotime("now");
    $b = strtotime("next Friday 1 hours 0 seconds");
    echo ($b - $a);

?>,
        displayDays: 2,
        theme: "white",
        displayCaptions: !0,
        fontSize: 48,
        captionSize: 14,
        lang: "ru"
    })
});
  </script>
Ага, этот плагин берёт начало отсчёта на клиенте, если дата окончания задана через timeTo. Я немного по-другому сделал:
<?php

/* Count seconds before action ending */
$currentDay = date( "w" );
$arrDays = array("5", "4", "3", "2", "1", "7", "6");
$secondsToEndAction = mktime(1, 0, 0, date("n"), date("j") + $arrDays[$currentDay], date("Y")) - time();

?>

$('#countdown').timeTo( {
		seconds: <?php echo $secondsToEndAction ?>,
		displayDays: 2
	} );
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Циклический отсчет времени Vor Серверные языки и технологии 0 24.02.2012 02:56
jQuery Timer - обратный отсчет времени в 10 минут adax jQuery 1 01.11.2011 14:54
Отсчет до указанного времени Jampire Общие вопросы Javascript 2 28.07.2011 01:22
Переменная дата окончания акции Axios Элементы интерфейса 10 25.05.2011 16:24
Обратный отсчет времени tenorica Общие вопросы Javascript 2 19.04.2011 23:30