Форум портала Metropolis

Высокие технологии и мобильный мир => Софт и интернет => Тема начата: vania-pooh от 15 Сентябрь 2007, 19:56



Название: Часы на javascript
Отправлено: vania-pooh от 15 Сентябрь 2007, 19:56
Как написать часы я знаю. Проблема в другом: у меня не работает тот же самый скрипт на усложненной таблицами странице. Есть вот такая страница:
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1251">
<meta http-equiv="CONTENT-LANGUAGE" content="ru">
<meta name="Robots" content="All">

<style>
<!--
@import url(css/common.css);
@import url(css/header.css);
-->
</style>

</head>

<body scroll="no">
<table height="120" width="100%" cellpadding="0" cellspacing="0" class="main_table" background="img/edit/header/bg_1.jpg">
<tr>
<td valign="bottom" align="center">
<table border="1" cellpadding="0" cellspacing="0" width="100%" class="header_table">
<tr>
<td width="10%">
</td>
<td >
<center><h1>Заголовок!</h1></center>
</td>
<td width="20%">
                                                    [size=15pt]Вот сюда хочу вставить часы!!![/size]
</td>
</tr>
</table>

<div align="left">

<table border="1" cellpadding="0" cellspacing="0" width="100%" class="navi_table">
<tr>
<td width="2%"></td>
<td><div align="left"><a class="navi" id="navi_baseurl">Базовая URL</a><a class="navi" id="navi_splitter">>></a><a class="navi" id="navi">Главная</a></div></td>
</tr>
</table>

</div>
</td>
</tr>
</table>

</body>

</html>

Стандартный скрипт для часов такой:
Код:
<HTML>
<HEAD><TITLE></TITLE></HEAD>

<script language="JavaScript">
function time()
{
vr=new Date();
//vrema.innerText=vr.getHours()+":"+vr.getMinutes()+":"+vr.getSeconds();
vrema.innerText=vr.toLocaleTimeString();
setTimeout("time()",1000)
}
</script>

<BODY onload="time()">
<font size="5">Сейчас: </font>
<font size="5" id="vrema"> </font>
</BODY>
</HTML>

Если запихать его в отдельный файл, то все работает. А если я запихиваю в свою страницу, то не работает функция setTimeout(). Если у вас получится, чтобы часы заработали, то просьба приложить файл.


Название: Re: Часы на javascript
Отправлено: Linker от 15 Сентябрь 2007, 21:50
Айс?


Название: Re: Часы на javascript
Отправлено: vania-pooh от 15 Сентябрь 2007, 22:06
я только не понимаю, а что ты сделал, что оно заработало?
------------------------------------------------------------
Как оказалось, дело было в постороннем скрипте, который выполнялся при загрузке данной страницы и, судя по всему, сбивал таймер.


Название: Re: Часы на javascript
Отправлено: Linker от 15 Сентябрь 2007, 22:11
Встречный вопрос: а что ты делал, что оно не работало?  :)


Название: Re: Часы на javascript
Отправлено: vania-pooh от 15 Сентябрь 2007, 22:41
там была записана функция window.onload, которая одноразово присваивала одному из якорей <a> значение его innerHTML и href. Если при этом функция часов запускалась раньше остального, то часы работали, а остальное - нет (так как выхода в основную программу из функции не происходило). Если все остальное запускалось раньше часов, то часы не работали. Вопрос решился разделением этих функций по разным файлам js.