Скрипт часов не работает в Мозилле и Опере, и другие проблемы для них

K8
На сайте с 29.05.2009
Offline
27
663

1. Вот есть скрипт часов, работающий в IE, но не работающий в Мозилле и Опере

<script language=javaScript>

<!--

function clockon() {

thistime= new Date()

var hours=thistime.getHours()

var minutes=thistime.getMinutes()

var seconds=thistime.getSeconds()

if (eval(hours) <10) {hours="0"+hours}

if (eval(minutes) < 10) {minutes="0"+minutes}

if (seconds < 10) {seconds="0"+seconds}

thistime = hours+":"+minutes+":"+seconds

if(document.all) {

bgclockshade.innerHTML=thistime

}

if(document.layers) {

document.bgclockshade.document.write('<div id="bgclockshade" style="font-family:Rosewood Std Regular;color:FFAAAAA;font-size:44px;">'+thistime+'</div>')

document.close()

}

var timer=setTimeout("clockon()",200)

}

// - End of JavaScript - -->

</script>

<body onLoad="clockon()">

<div id="bgclockshade" style="font-family:Rosewood Std Regular;color:FFAAAAA;font-size:44px;"></div>

</body>

что нибудь можно сделать, чтобы он работал везде?

2. Если находишься на странице второго уровня и стоит ссылка на главную в виде "../" - то переходит все равно на туже страницу... это нормально для Оперы и Мозиллы?

3. Мозилла, Опера и эксплоер шрифты по разному воспринимает из-за этого картинки сьезжают и возникают другие проблемы

вот скрины сделал: http://pic.ipicture.ru/uploads/091107/874DpSfIdR.jpg

с чем это может быть связано?

не судите меня строго, я только учусь и поэтому хочу разобраться...

заранее всем спасибо!

[Удален]
#1
Kul86:
1. Вот есть скрипт часов, работающий в IE, но не работающий в Мозилле и Опере

<script language=javaScript>
<!--

function clockon() {
thistime= new Date()
var hours=thistime.getHours()
var minutes=thistime.getMinutes()
var seconds=thistime.getSeconds()
if (eval(hours) <10) {hours="0"+hours}
if (eval(minutes) < 10) {minutes="0"+minutes}
if (seconds < 10) {seconds="0"+seconds}
thistime = hours+":"+minutes+":"+seconds

if(document.all) {
bgclockshade.innerHTML=thistime
}

if(document.layers) {
document.bgclockshade.document.write('<div id="bgclockshade" style="font-family:Rosewood Std Regular;color:FFAAAAA;font-size:44px;">'+thistime+'</div>')
document.close()
}
var timer=setTimeout("clockon()",200)
}

// - End of JavaScript - -->
</script>


<body onLoad="clockon()">
<div id="bgclockshade" style="font-family:Rosewood Std Regular;color:FFAAAAA;font-size:44px;"></div>
</body>

что нибудь можно сделать, чтобы он работал везде?

2. Если находишься на странице второго уровня и стоит ссылка на главную в виде "../" - то переходит все равно на туже страницу... это нормально для Оперы и Мозиллы?

3. Мозилла, Опера и эксплоер шрифты по разному воспринимает из-за этого картинки сьезжают и возникают другие проблемы
вот скрины сделал: http://pic.ipicture.ru/uploads/091107/874DpSfIdR.jpg
с чем это может быть связано?

не судите меня строго, я только учусь и поэтому хочу разобраться...
заранее всем спасибо!

Для начала вместо eval используем intval

вместо


bgclockshade.innerHTML=thistime
и тому подобного непонятного кода

должен быть код


document.getElementById('bgclockshade').innerHTML=thistime

Делаем это всё если window.onload, чтобы div с идентификатором bgclockshade точно существовал.

непонятно почему для функции clockon() интервал в 200 миллисекунд - поставьте 1000 (1 секунда - быстрей у Вас таймер все равно тикать не сможет).

Ну а вообще лучше конечно ссылочку выложить, чтобы можно было посмотреть.

NL
На сайте с 29.01.2003
Offline
212
#2

Kul86, и в Мозилле и в Опере есть error-консоль, смотрите там.

P.S. Согласен с So1 - лучше ссылку давать, там все можно было бы посмотреть.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий