Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Ошибка в простеньком скрипте, нужна помощь (https://javascript.ru/forum/dom-window/8076-oshibka-v-prostenkom-skripte-nuzhna-pomoshh.html)

Taisia 05.03.2010 18:12

Ошибка в простеньком скрипте, нужна помощь
 
Нашла скрипт, который заменяет картинку при наведении на ссылку, но при убирании курсора не возвращал прежнюю. Добавила imgOut, вроде работет, но в браузере выдает ошибки. Знаю что накосячила, т.к. впервые столкнулась со скриптами, помогите, плиз поправить :cray:

Вот скрипт:

<script>
function not(){
document.img1.src="images/im1.gif"
}	
function imgOn(imgName) {
if (document.images) {
document.img1.src = imgName;        }}

{
document.img1.src="images/im1.gif"
}	
function imgOut(imgName) {
if (document.images) {
document.img1.src="images/im1.gif";        }}
</script>


вид ссылки:

<a href="http://site.com/somepage.html" onmouseover="imgOn('images/im2.gif')" onmouseout="imgOut('images/im1.gif')" >текст ссылки</a>



im1.gif - картинка по умолчанию
im2.gif - картинка при наведении

При убирании курсора нужно возвратить im1.gif

e1f 05.03.2010 18:18

<a href="http://site.com/somepage.html" onmouseover="imgOn('images/im2.gif')" onmouseout="imgOn('images/im1.gif')" >текст ссылки</a>

Taisia 05.03.2010 18:49

все равно выдает ошибку:

document.img1 is undefined

в IE: document.img1 есть null или не является объектом

может я не правильно вывожу картинку? код такой:

<img id="img1" src="images/im1.gif" width="50" height="50" alt="" border="0" name="img1" />

JsLoveR 05.03.2010 22:26

<a href="http://site.com/somepage.html"
onMouseOver="img1.src='images/im2.gif'"
onMouseOut="img1.src='images/im1.gif'">текст ссылки
</a>
<img  src="images/im1.gif" width="50" height="50" alt="" border="0" name="img1" />

Без каких-либо Ваших функций

Taisia 05.03.2010 23:11

JsLoveR, огромное спасибо!!! :thanks: Не знала о таком простом способе - мне еще долго учиться :)

JsLoveR 05.03.2010 23:16

Taisia,
У Вас всё ещё впереди:)

Gozar 06.03.2010 15:49

Цитата:

Сообщение от JsLoveR (Сообщение 46923)
Taisia,
У Вас всё ещё впереди:)

У Вас тоже всё ещё впереди :) если Вы предлагаете такой вариант, картинку нужно обязательно предварительно подгрузить иначе при медленном коннекте будут задержки в смене картинок.

JsLoveR 06.03.2010 19:19

Цитата:

Сообщение от Gozar (Сообщение 46952)
картинку нужно обязательно предварительно подгрузить иначе при медленном коннекте будут задержки в смене картинок.

согласен,
сделать функцию предварительной загрузки изображений, обойтись одной функцией.

subzey 06.03.2010 22:30

Зачем тут яваскрипт вообще? Просто используйте :hover для ссылки.

Gozar 06.03.2010 23:43

и спрайт.


Часовой пояс GMT +3, время: 05:14.