Livanderiaamarum,
Я бы не стал работать с вами и вашим кодом, он не читабелен вообще и от этого ужасен. Пусть даже возможно и правильный. |
Солидарен с Nekromancer.
|
Цитата:
п.с. аа ну да. у нас же разные уровни)) в том примере я не обьяснял человеку как нужно сделать. а сделал самый оптимальный и гибкий вариант) и дал ему интерфейс. Вам естественно ничего не понятно) вы же не понимаете как устроен этот паттерн. советую подтянуть ваш javascript чтобы работать со мной на одном уровне) |
Цитата:
|
Цитата:
но ведь там знание событий браузеров, а тут javascript/ связь? аа, вы как я понимаю только браузерный js учили с детства))? только сайтики клепать способны да)? наверное каждый косяк ИЕ выучили)? это похвально) даже наверное не знаете что js бывает не только в браузерах)? да о чем я говорю. не тот уровень) |
Ребята давайте не будем кормить троля. Этот конечно потоньше чем некоторые но всё же.)
|
Цитата:
|
Вроде как слепил. Для начала обычный таймер
<html> <head> <meta charset="utf-8"> <style type="text/css"> body { background-color:#ffcc33; margin:0px; } div { color:#0033cc; font:bold 12pt Tahoma; margin:15px; } </style> <script type="text/javascript"> var Timer = (function() { var now, tm, offset = 0, i = 0; return function() { switch(arguments[0]) { case true: if(offset === 0) { now = new Date(); offset = now.getTimezoneOffset() * 60000; } else { return ; } break; case false: if(offset !== 0) { clearTimeout(arguments.callee); i = tm.getTime() - offset; offset = 0; } } if(offset !== 0) { tm = new Date((new Date()).getTime() - now.getTime() + offset + i); document.getElementsByTagName('div')[0].innerHTML = tm.toLocaleTimeString(); setTimeout(arguments.callee, 500); } } })(); </script> </head> <body> <input type="button" onclick="Timer(true)" value="Start"> <input type="button" onclick="Timer(false);" value="Pause"> <div>Div HTML</div> </body> </html> |
Обратный таймер. Наверное можно сделать проще, но у меня получилось так :)
//в этой строке время выставляется в часах(0), минутах(0), секундах(30) и миллисекундах(0) var x = (0 * 3600000) + (0 * 60000) + (30 * 1000) + 0; <html> <head> <meta charset="utf-8"> <style type="text/css"> body { background-color:#ffcc33; margin:0px; } div { color:#0033cc; font:bold 12pt Tahoma; margin:15px; } </style> <script type="text/javascript"> var backTimer = (function() { var x = (0 * 3600000) + (0 * 60000) + (30 * 1000) + 0; var now, tm, offset = 0, i = 0; return function() { switch(arguments[0]) { case true: if(offset === 0) { now = new Date(); offset = now.getTimezoneOffset() * 60000; } else { return ; } break; case false: if(offset !== 0) { clearTimeout(arguments.callee); i = x - tm.getTime() + offset; offset = 0; } } if(offset !== 0) { tm = new Date((new Date()).getTime() - now.getTime() + i); if(tm.getTime() < x) { tm.setTime(x - tm.getTime() + offset); document.getElementsByTagName('div')[0].innerHTML = tm.toLocaleTimeString(); setTimeout(arguments.callee, 500); } else { clearTimeout(arguments.callee); tm.setTime(0 + offset); document.getElementsByTagName('div')[0].innerHTML = tm.toLocaleTimeString(); offset = 0; i = 0; } } } })(); </script> </head> <body> <input type="button" onclick="backTimer(true)" value="Start"> <input type="button" onclick="backTimer(false);" value="Pause"> <div>Div HTML</div> </body> </html> |
Цитата:
|
Часовой пояс GMT +3, время: 14:05. |