Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.07.2014, 15:32
Аспирант
Отправить личное сообщение для SLameN Посмотреть профиль Найти все сообщения от SLameN
 
Регистрация: 13.08.2012
Сообщений: 70

Секунды в минуты
Имеется скрипт:
<script type="text/javascript">
    var timer;
    function start_timer()
    {
        if (timer) clearInterval(timer);
        secs = 0;
        document.getElementById('timer').innerHTML = secs + ' сек.';
        timer = setInterval(
            function () {
                secs++;
                document.getElementById('timer').innerHTML = + secs + ' сек.';
            },
            1000
        );
    }
</script>


<div id="timer"></div>

        <form method="post">
            <select>
                <option>Начало</option>
                <option>Окончание</option>
            </select>

            <input type="submit" value="Сохранить" class="button" onclick="start_timer()" />
        </form>


1. Как переводить секунды в минуты, а минуты в часы? Сейчас всегда секунды.
2. При нажатии на submit секунды появляются и исчезают
3. Чтобы при перезагрузке страницы время не сбрасывалось, это уже ajax? Если да, то много нужно писать?

Последний раз редактировалось SLameN, 01.07.2014 в 15:57. Причина: добавил Html
Ответить с цитированием
  #2 (permalink)  
Старый 01.07.2014, 15:59
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,071

SLameN,
а тонны таймеров на форуме вас неустраивают? посмотрите как они сделаны
Ответить с цитированием
  #3 (permalink)  
Старый 01.07.2014, 16:18
Аспирант
Отправить личное сообщение для SLameN Посмотреть профиль Найти все сообщения от SLameN
 
Регистрация: 13.08.2012
Сообщений: 70

Да, но проблема же не только в этом Вот например я взял ваш пример
<script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
   $(function ()
   		{
   				var timers, ret;
   				$(":button")
   				.click(function ()
   						{
   								$(this)
   								.val("\u25b6" == $(this)
   										.val()? "\u25fc": "\u25b6")
   								.prev()
   								.data(
   										{
   										timer: (new Date)
   												.getTime()
   										}
   								)
   								.toggleClass("timer");
   								timers = $(".timer");
   								timers.size() && Timer()
   						}
   				);

   				function two(a) {
   						return (9 < a? "": "0") + a
   				}

   				function formatTime(a) {
   						a = Math.floor(a / 1E3);
   						var b = Math.floor(a / 60),
   						c = Math.floor(b / 60);
   						a %= 60;
   						b %= 60;
   						return two(c) + " : " + two(b) + " : " + two(a)
   				}

   				function Timer() {
   						window.clearTimeout(ret);
   						timers.each(function (a, b)
   								{
   										var c = (new Date)
   										.getTime() - $(b)
   										.data("timer") | 0,
   										c = formatTime(c);
   										$(b)
   										.html(c)
   								}
   						);
   						timers.size() && (ret = window.setTimeout(Timer, 1000))
   				};

   		}
   );
  </script>


<div id="timer">00 : 00 : 00</div>

        <form method="post">
            <select>
                <option>Начало</option>
                <option>Окончание</option>
            </select>

<input type="submit" value="Сохранить" class="button" />
        </form>


1. Как заставить работать таймер по кнопке submit?
2. Как время выводить в блок - timer
3. Как сделать ajax, перезагрузка страницы не сбивала таймер
Ответить с цитированием
  #4 (permalink)  
Старый 01.07.2014, 16:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,071

SLameN,
1.2
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
   $(function ()
   		{
   				var timers, ret;
   				$(".button")
   				.click(function ()
   						{
                                var go = $("select").val() == "Начало" ;
   								$("#timer")
   								.data(
   										{
   										timer: (new Date)
   												.getTime()
   										}
   								)
   								[(go ? "add" : "remove") + "Class"]("timer");
   								timers = $(".timer");
   								timers.size() && Timer()
   						}
   				);

   				function two(a) {
   						return (9 < a? "": "0") + a
   				}

   				function formatTime(a) {
   						a = Math.floor(a / 1E3);
   						var b = Math.floor(a / 60),
   						c = Math.floor(b / 60);
   						a %= 60;
   						b %= 60;
   						return two(c) + " : " + two(b) + " : " + two(a)
   				}

   				function Timer() {
   						window.clearTimeout(ret);
   						timers.each(function (a, b)
   								{
   										var c = (new Date)
   										.getTime() - $(b)
   										.data("timer") | 0,
   										c = formatTime(c);
   										$(b)
   										.html(c)
   								}
   						);
   						timers.size() && (ret = window.setTimeout(Timer, 1000))
   				};

   		}
   );
  </script>

</head>

<body>
   <div id="timer">00 : 00 : 00</div>

        <form method="post" onsubmit="return false">
            <select>
                <option>Начало</option>
                <option>Окончание</option>
            </select>

<input type="submit" value="Сохранить" class="button" />
        </form>

</body>

</html>

3. ищите таймер с сохранением -- такие тоже есть на форуме
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Преобразовать минуты в часы Marker Events/DOM/Window 5 17.11.2013 00:22
секунды в часы минуты секунды tiho Общие вопросы Javascript 2 10.03.2013 21:41
передать в обьект Date массив из [ секунды, минуты, часы ] Livanderiaamarum Общие вопросы Javascript 11 16.12.2011 23:44
секунды в минуты DjKoff jQuery 7 11.06.2011 00:48
преобразование секунд в минуты Эдуард Общие вопросы Javascript 11 08.12.2010 07:19