Идентификатор изображения не определен в Firefox - PullRequest
1 голос
/ 02 ноября 2010

Следующая функция для изменения источника изображения при наведении / наведении мыши работает в Chrome:

 $(document).ready(function() {
            $('#img_home').mouseover(function() {
                img_home.src = 'img/btn/act/home2.gif';
            })
            .mouseout(function() {
                img_home.src = 'img/btn/pas/home.gif';
            });

В Firefox консоль отображает «img_home» не определено.

Вот разметка:

<a href="Default.aspx">
    <img alt="home" src="img/btn/pas/home.gif" 
     id="img_home" style="border: none" />
</a>

Есть идеи?

Ответы [ 3 ]

3 голосов
/ 02 ноября 2010

Вам нужно использовать this, это будет ссылаться на соответствующий элемент:

 $(document).ready(function() {
    $('#img_home').mouseenter(function() {
       this.src = 'img/btn/act/home2.gif';
    })
    .mouseleave(function() {
       this.src = 'img/btn/pas/home.gif';
 });
2 голосов
/ 02 ноября 2010

Вам нужно использовать this для ссылки на элемент, а не на его идентификатор:

$(document).ready(function() {
    $('#img_home').mouseover(function() {
        this.src = 'img/btn/act/home2.gif';
    }).mouseout(function() {
       this.src = 'img/btn/pas/home.gif';
    });
});
0 голосов
/ 02 ноября 2010

Не хотите:

$('#img_home').src = ...

Если вы не определили переменную img_home перед добавленным фрагментом кода, не существует известной переменной с именем img_home.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...