Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Не работает this (https://javascript.ru/forum/css-html/16608-ne-rabotaet.html)

DZHETIGAPA 14.04.2011 17:11

Не работает this
 
Новичек в джаваскрипте. Потихоньку разбираюсь в нем.
Так вот, беру простенький примерчик. Вот так вот работает:
<a href="help.html"
   onmouseover="document.helpimage.src='images/help_rollover.gif';"
   onmouseout="document.helpimage.src='images/help.gif';">
<img name="helpimage" src="images/help.gif" border="0">
</a>

А вот так уже не работает:
<a href="help.html"
   onmouseover="this.src='images/help_rollover.gif';"
   onmouseout="this.src='images/help.gif';">
<img name="helpimage" src="images/help.gif" border="0">
</a>

Объясните пожалуйста, почему не работает. Код ведь вроде идентичный.

Vulkan 14.04.2011 17:21

И не должно работать:
<a href="help.html">
<img name="helpimage" src="images/help.gif" onmouseover="this.src='images/help_rollover.gif';" onmouseout="this.src='images/help.gif';" border="0">
</a>

В данном случае this указывает на картинку, а в приведённом вами коде он указывает на ссылку.

DZHETIGAPA 14.04.2011 17:39

this - это ведь объект image в данном случае. Что-то понять не могу. объясните подробнее пожалуйста.

Тем более этот пример из учебника, а не из головы взят.

walik 14.04.2011 17:58

Вы используете this в атрибуте у ссылки, поэтому он и указывает на ссылку.


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