И почему это не работает?

  • Автор темы Nicolas Prof
  • Дата начала
Статус
В этой теме нельзя размещать новые ответы.

Nicolas Prof

Guest
И почему это не работает?

Необходимо сделать плавающие часики )).
Код плавающей панели правильный и работает на 100%. ТАкже таймер работает на 100%. Но вот когда решил все это впихнуть в один DIV почему -то панель не хочет плавать, то есть таймер идет, а панель не передвигается...в чем тут проблема.

Вот собственно код:
Код:
<script language="JavaScript" type="text/javascript">
////////////////////////////////////////////////////////////////////////////////////////////
//Скрипт таймера
//////////////////////////////////////////////////////////////////////////////////////////////
var counter, mi, se, inputDataWright=false;

function startTimer(){
//Установка времени
mi=<?=$_REQUEST['test_time']-1?>;
se=60;
counter=window.setInterval("decrement()",1000);}

function decrement(){
if (mi==0 && se==0){
window.clearInterval(counter);
return;
}
if (se==0){
mi-=1;
se=60;}
if (se<11){
se-=1;
timer.innerText=("Время: "+mi+" : 0"+se);
}
else {
se-=1;
timer.innerText=("Время: "+mi+" : "+se);
}
}
</script>
<script language="JavaScript" type="text/javascript">
////////////////////////////////////////////////////////////////////////////////////////////
//Скрипт плавающей панели
////////////////////////////////////////////////////////////////////////////////////////////
window.onload=moving;
var intervalID;
function moving(){
	intervalID = window.setInterval("move()",1);
}
function move(){
	if(parseInt(floating.style.top)<document.body.scrollTop){
		floating.style.top=parseInt(floating.style.top)+5;
	}
	if(parseInt(floating.style.top)>document.body.scrollTop){
		floating.style.top=parseInt(floating.style.top)-5;
	}

}
////////////////////////////////////////////////////////////////////////////////////////////
</script>
<?
print "</head>";
print "<body onload='startTimer();'>";?>

<!--Таймер-->
<div name="floating" id="floating" style="z-index:1;top:2px;right:2px;position:absolute">
<div class="timer" name="timer" id="timer">Время: <?=$_REQUEST['test_time']?> : 00</div>
</div>
-~{}~ 31.03.05 15:38:

Неужели никто не знает в чем здесь загвоздка? Почему при работающем таймере панель не хочет передвигаться??

-~{}~ 02.04.05 20:35:

Возможно главная проблема из-за того что когда срабатывает innerText, то Div устанавливается на начальное положение...хм...

Никто не видел плавающую панель с Часами...интересно было бы посмотреть код....а то никак не получается...а точнее код рабочий...а вот вместе не хотят((
 

Nicolas Prof

Guest
DimbIch
Вообще-то этот код в сгенерированной странице ))
А так действительно Сплошная Яваскрипт...но мне этот форум нравиться вот и подумал что помогут здесь ;)

Если не помогут, то хотя бы подскажут...
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: Nicolas Prof
Неужели никто не знает в чем здесь загвоздка?
В том, что <body onload="..."> на самом деле устанавливает обработчик window.onload
 

Nicolas Prof

Guest
Sad Spirit
И?...
Что нужно функцию StartTimer запустить из функции moving?
 

Romantik

TeaM PHPClub
Тема закрыта.

Создание новых тем, имеющих малосодержательное название запрещено правилами форума.
Помните о других людях, которые будут искать ответ на схожий вопрос.
Формулируйте название темы более четко.
Правила форума: http://phpclub.ru/talk/announcement.php?s=&forumid=12
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: Nicolas Prof
Что нужно функцию StartTimer запустить из функции moving?
Ну да, сделать один обработчик для window.onload и запускать все таймеры из него.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху