-
Вот такая проблема.. Приведенный код коректно запускается во всех браузерах, кроме оперы..
Проблема проявляется в следующем. При запуске вместо фона видно только белое пустое окно.
Фон не появляется.Но если переключится на другую вкладку и вернуться назад то обнаруживаю что фон есть. Из-за чего это происходит?
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
<head>
****<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
****<title>Ìóçûêà è ïîýçèÿ</title>
*
****
****<LINK REL ="STYLESHEET" type ="text/css" href ="musicCSS.css">
* *<script lanaguage ="JavaScript">
* *<!--
*window.onresize = function()
*{
*****if (document.body.clientWidth <= 1024)
* * * * document.body.style.background ="url(moon1024X768.jpg)";
* *else
* *****if (document.body.clientWidth <= 1152)
* * * * *document.body.style.background ="url(moon1152X864.jpg)";
* *****else
* * *if (document.body.clientWidth <= 1280)
* * *{ * *
* * * * * * if (document.body.clientHeight <= 960)
* * * * * *document.body.style.background ="url(moon1280X960.jpg)";
* * * * * else
* * * * *****document.body.style.background ="url(moon1280X1024.jpg)"; *
* * *}
* * * * * *else
* * * * *document.body.style.background ="url(moon1600X1200.jpg)"; *
*}
*
*function changeFon()
*{
*
* *if (document.body.clientWidth <= 1024)
* * * * document.body.style.background ="url(moon1024X768.jpg)";
* *else
* *****if (document.body.clientWidth <= 1152)
* * * * *document.body.style.background ="url(moon1152X864.jpg)";
* *****else
* * *if (document.body.clientWidth <= 1280)
* * *{ * *
* * * * * * if (document.body.clientHeight <= 960)
* * * * * *document.body.style.background ="url(moon1280X960.jpg)";
* * * * * else
* * * * *****document.body.style.background ="url(moon1280X1024.jpg)"; *
* * *}
* * * * * *else
* * * * *document.body.style.background ="url(moon1600X1200.jpg)"; *
* }
****//--> *
****</script>
</head>
<body *onload ="changeFon();">
</body>
</html>
-
Погонял код через валидатор - оказалось доктайп не тот. Да и точку-запятую(красным) не надо ставить в onload ="someFunction();".
Но проблемы с бэкграундом на onload остались. На онрезсайз все нормально выполняется smile.gif Валидатор не одной ошибки не видит.
Выручайте Боба.
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
* *<META HTTP-EQUIV="Content-Type" CONTENT='text/html; charset=windows-1251'>
* *<title>Музыка и поэзия</title>
* *
* *<LINK REL ="STYLESHEET" type ="text/css" href ="musicCSS.css">
* *<script type="text/javascript">
* *<!--
* * * *window.onresize = function()
* * * *{
* * * * * *if (document.body.clientWidth <= 1024)
* * * * * * * * * * document.body.style.background ="url(moon1024X768.jpg)";
* * * * * * * *else
* * * * * * * * * *if (document.body.clientWidth <= 1152)
* * * * * * * * * * * * document.body.style.background ="url(moon1152X864.jpg)";
* * * * * * * * * *else
* * * * * * * * * * * *if (document.body.clientWidth <= 1280)
* * * * * * * * * * * *{ * *
* * * * * * * * * * * * * * * if (document.body.clientHeight <= 960)
* * * * * * * * * * * * * * * * * * *document.body.style.background=
"url(moon1280X960.jpg)";
* * * * * * * * * * * * * * else
* * * * * * * * * * * * * * * * * document.body.style.background=
"url(moon1280X1024.jpg)"; *
* * * * * * * * * * * *}
* * * * * * * * * * * *else
* * * * * * * * * * * * * *document.body.style.background ="url(moon1600X1200.jpg)"; *
* * * *}
* * * *
* * * *function changeFon()
* * * *{
* * * *
* * * * * * * *if (document.body.clientWidth <= 1024)
* * * * * * * * * * document.body.style.background ="url(moon1024X768.jpg)";
* * * * * * * *else
* * * * * * * * * *if (document.body.clientWidth <= 1152)
* * * * * * * * * * * * document.body.style.background ="url(moon1152X864.jpg)";
* * * * * * * * * *else
* * * * * * * * * * * *if (document.body.clientWidth <= 1280)
* * * * * * * * * * * *{ * *
* * * * * * * * * * * * * * * if (document.body.clientHeight <= 960)
* * * * * * * * * * * * * * * * * *document.body.style.background=
"url(moon1280X960.jpg)";
* * * * * * * * * * * * * * else
* * * * * * * * * * * * * * * * * document.body.style.background=
"url(moon1280X1024.jpg)"; *
* * * * * * * * * * * *}
* * * * * * * * * * * *else
* * * * * * * * * * * * * *document.body.style.background ="url(moon1600X1200.jpg)"; *
* * * * }
* *//--> * *
* *</script>
</head>
<body *onload ="changeFon()">
</body>
</html>
-
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
или на худой конец:
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
-
Цитата:
Originally posted by Aykroyd@May 18 2007, 11:38
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
или на худой конец:
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<div align='right'>[Only registered and activated users can see links. Click Here To Register...]</div>
Каюсь! Но и эти доктайпы не помогли! Проблема не решена.Что же делать?
-
Вместо <body onload ="changeFon()"> пишем:
Код:
<body>
<script type="text/javascript">changeFon();</script>
</body>
И будет Вам счастье...
P.S. Имхо сама идея – гадость. Без соответствующего прелоада эти фоны будут при смене грузиться полгода. А если делать прелоад на все фоны – то это тоже долго, т.к. их, во-первых, много, а во-вторых, каждый из них, как мне подсказывает интуиция, совсем не маленького "веса"...