простенький скрипт(листалка фоновых изображений) не работает в хроме и сафари
мой первый скриптик. сильно не смейтесь :)
суть - листалка картинок, заданных фоном хедеру. две кнопки - ссылки - вперед и назад.
<script type="text/javascript">
var n=0;
var name = new Array();
name[0] = 1;
name[1] = 2;
name[2] = 3;
var count = (name.length) - 1;
window.onload = function() {
document.getElementById('forward').onclick=function() {
n++;
if(n> count) n=0;
if(n< 0) n= count;
document.getElementById('header').style.cssText='background:url("images/mainphoto'+name[n]+'.jpg")';
}
document.getElementById('backward').onclick=function() {
n--;
if(n> count) n=0;
if(n< 0) n= count;
document.getElementById('header').style.cssText='background:url("images/mainphoto'+name[n]+'.jpg")';
}
}
</script>
все работает в лисе и опере, но в хроме и сафари - нет. В чем может быть дело? Как я понимаю дело именно в строчке изменения css, потому что хром пытается вывести картинку с названием mainphotoundefined.jpg т.е. не определяется переменная n |
Работает! :D
|
Цитата:
|
Работает.
|
LostSenSS, посмотри как используется бекграунд в объектной модели...
http://htmlbook.ru/css/background Почти в самом низу... |
Цитата:
попробовал писать window вместо document. и вместе с ним. и писать background вместо cssText. так не работает даже в лисе с оперой :/ |
во-первых, пиши так:
document.getElementById('header').style.background = 'url(...)'; во-вторых, учись отлаживать, пишешь в какой-нибудь строчке скрипта слово debugger и браузер остановит выполнение в этом месте, если ты перед этим откроешь "Инструменты разработчика" |
Цитата:
document.getElementById('header').style.background ='url("images/mainphoto'+name[n]+'.jpg")'; debugger такой вариант работает в опере и лисе но по прежднему не работает в сафари и хроме. ошибка следующая - Failed to load resource: the server responded with a status of 404 (Not Found) оно и понятно, вместо значения переменной в имя файла подставляется undefined |
Цитата:
console.log(name, n); и смотришь в консоль "Инструментов разработчика" |
>>>> if(n< 0) n= count; <<<<
|
| Часовой пояс GMT +3, время: 17:22. |