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, время: 07:01. |