Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.12.2018, 04:55
Новичок на форуме
Отправить личное сообщение для niskapones Посмотреть профиль Найти все сообщения от niskapones
 
Регистрация: 02.12.2018
Сообщений: 3

Таймер до нового года
Братцы я не спал уже 2 суток, но это уже выше моих сил. Эта пакость не хочет работать. Подскажите где мне поправить данные чтоб шел отсчет до нового года, и время отсчитывало исходя из времени региона или компьютерного времени человека. Пожалуйста помогите

(function($) {
	$.fn.ccountdown = function(_yr, _m, _d, _t) {
		var $this = this;
		var _montharray = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
		var _today = new Date();
		// calling function first time so that it wll setup remaining time
		var _changeTime = function(now) {
			var _today = new Date();
			var _todayy = _today.getYear();
			if (_todayy < 1000)
				_todayy += 1900;
			var _todaym = _today.getMonth();
			var _todayd = _today.getDate();
			var _todayh = _today.getHours();
			var _todaymin = _today.getMinutes();
			var _todaysec = _today.getSeconds();
			_todaysec = "0" + _todaysec;
			_todaysec = _todaysec.substr(_todaysec.length - 2);
			var _todaystring = _montharray[_todaym] + " " + _todayd + ", " + _todayy + " " + _todayh + ":" + _todaymin + ":" + _todaysec;
			var _futurestring = _montharray[_m - 1] + " " + _d + ", " + _yr + " " + _t;
			/* calculation of remaining days, hrs, min, and secs */
			_dd = Date.parse(_futurestring) - Date.parse(_todaystring);
			_dday = Math.floor(_dd / (60 * 60 * 1000 * 24) * 1);
			_dhour = Math.floor((_dd % (60 * 60 * 1000 * 24)) / (60 * 60 * 1000) * 1);
			_dmin = Math.floor(((_dd % (60 * 60 * 1000 * 24)) % (60 * 60 * 1000)) / (60 * 1000) * 1);
			_dsec = Math.floor((((_dd % (60 * 60 * 60 * 1000 * 24)) % (60 * 60 * 1000)) % (60 * 1000)) / 1000 * 1);
			var el = $($this);
			var $ss = el.find(".second"), $mm = el.find(".minute"), $hh = el.find(".hour"), $dd = el.find(".days");
			$ss.val(_dsec).trigger("change");
			$mm.val(_dmin).trigger("change");
			$hh.val(_dhour).trigger("change");
			$dd.val(_dday).trigger("change");
};
		_changeTime();
		setInterval(_changeTime, 1000);
	};
 
})(jQuery);


//hour = (hour < 10) ? "0"+hour : hour;

Последний раз редактировалось niskapones, 02.12.2018 в 08:58.
Ответить с цитированием
  #2 (permalink)  
Старый 02.12.2018, 08:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

niskapones,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #3 (permalink)  
Старый 02.12.2018, 08:56
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

niskapones,
таймер до нового года осталось
Ответить с цитированием
  #4 (permalink)  
Старый 02.12.2018, 09:00
Новичок на форуме
Отправить личное сообщение для niskapones Посмотреть профиль Найти все сообщения от niskapones
 
Регистрация: 02.12.2018
Сообщений: 3

Спасибо но мне бы хотелось реализовать это не средствами Html а именно скриптом
Ответить с цитированием
  #5 (permalink)  
Старый 02.12.2018, 09:00
Новичок на форуме
Отправить личное сообщение для niskapones Посмотреть профиль Найти все сообщения от niskapones
 
Регистрация: 02.12.2018
Сообщений: 3

Сообщение от рони Посмотреть сообщение
niskapones,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Отредактировал, извините я новичок на форуме
Ответить с цитированием
  #6 (permalink)  
Старый 02.12.2018, 09:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Сообщение от niskapones
мне бы хотелось реализовать это не средствами Html а именно скриптом
можно перевод?
что не так в примере по ссылке?
Ответить с цитированием
  #7 (permalink)  
Старый 02.12.2018, 09:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

niskapones,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
(function($) {
    $.fn.ccountdown = function(_yr, _m, _d, _t) {
        var $this = this;
        var _montharray = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
        var _today = new Date();
        // calling function first time so that it wll setup remaining time
        var _changeTime = function(now) {
            var _today = new Date();
            var _todayy = _today.getYear();
            if (_todayy < 1000)
                _todayy += 1900;
            var _todaym = _today.getMonth();
            var _todayd = _today.getDate();
            var _todayh = _today.getHours();
            var _todaymin = _today.getMinutes();
            var _todaysec = _today.getSeconds();
            _todaysec = "0" + _todaysec;
            _todaysec = _todaysec.substr(_todaysec.length - 2);
            var _todaystring = _montharray[_todaym] + " " + _todayd + ", " + _todayy + " " + _todayh + ":" + _todaymin + ":" + _todaysec;
            var _futurestring = _montharray[_m - 1] + " " + _d + ", " + _yr + " " + _t;
            /* calculation of remaining days, hrs, min, and secs */
            _dd = Date.parse(_futurestring) - Date.parse(_todaystring);
            _dday = Math.floor(_dd / (60 * 60 * 1000 * 24) * 1);
            _dhour = Math.floor((_dd % (60 * 60 * 1000 * 24)) / (60 * 60 * 1000) * 1);
            _dmin = Math.floor(((_dd % (60 * 60 * 1000 * 24)) % (60 * 60 * 1000)) / (60 * 1000) * 1);
            _dsec = Math.floor((((_dd % (60 * 60 * 60 * 1000 * 24)) % (60 * 60 * 1000)) % (60 * 1000)) / 1000 * 1);
            var el = $($this);
            var $ss = el.find(".second"), $mm = el.find(".minute"), $hh = el.find(".hour"), $dd = el.find(".days");
            $ss.val(_dsec).trigger("change");
            $mm.val(_dmin).trigger("change");
            $hh.val(_dhour).trigger("change");
            $dd.val(_dday).trigger("change");
};
        _changeTime();
        setInterval(_changeTime, 1000);
    };

})(jQuery);

$(function() {
    $(".timer").ccountdown(2019,1,1,'0:0')
});
  </script>
</head>

<body>
<div class="timer">
<input class="days">
<input class="hour">
<input class="minute">
<input class="second">
</div>

</body>
</html>

Последний раз редактировалось рони, 02.12.2018 в 09:27.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Socket.io Асинхронный таймер monstantin AJAX и COMET 1 04.05.2018 00:48
Таймер на вкладках в Хроме. YNA Opera, Safari и др. 1 28.01.2016 02:43
помогите чтобы таймер тикал Руслан904322 Общие вопросы Javascript 1 22.02.2015 12:43
Исправить таймер sizov_stanislav Библиотеки/Тулкиты/Фреймворки 2 05.11.2014 20:18
Обновляемый таймер на javascript smillyhamster Общие вопросы Javascript 1 31.12.2013 10:30