Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   изменения рисунка при наведении курсора (https://javascript.ru/forum/events/2742-izmeneniya-risunka-pri-navedenii-kursora.html)

Kenan Bek 06.02.2009 01:41

изменения рисунка при наведении курсора
 
У меня такой код:

<div onmouseover="yux3.src='../img/yux_3.jpg';"
onmouseout="yux3.src='../img/yux_3b.jpg';">

<img name=yux3 src="../img/yux_3b.jpg">

</div>


при наведении курсора на рисунок картинка меняется, но и загружается в это время. а это неодубно. приходиться держать курсор над рисунком чтоб он до конца загружался. а как зделать так чтобы рисунки загружались при загрузки станицы и чтобы при наведении сразу менялся?

Андрей Параничев 06.02.2009 01:49

Для предварительной загрузки можно использовать такую конструкцию:
<script type="text/javascript">
    new Image().src = "путь_к_файлу_изображения";
</script>


Кстати, вы получаете доступ к элементу через глобальную переменную - это будет работать только в Internet Explorer. Для совместимости с другими браузерами лучше использовать функцию document.getElementById или document.getElementsByName для получения элемента по id и name соответственно.
<div onmouseover="document.getElementById('yux3').src='../img/yux_3.jpg';"
onmouseout="document.getElementById('yux3').src='../img/yux_3b.jpg';">

<img id=yux3 src="../img/yux_3b.jpg">

</div>

Kenan Bek 06.02.2009 02:21

пожалуйста скажите как будет выглядет код полностью?

Андрей Параничев 06.02.2009 02:39

Тег script вы можете разместить в любом месте в секции head или body:
<script type="text/javascript">
    new Image().src = "../img/yux_3.jpg";
</script>
<div onmouseover="document.getElementById('yux3').src='../img/yux_3.jpg';"
onmouseout="document.getElementById('yux3').src='../img/yux_3b.jpg';">
 
<img id=yux3 src="../img/yux_3b.jpg">
 
</div>


new Image().src = "../img/yux_3.jpg";

Эта конструкция просто говорит браузеру, что изображение нужно загрузить. После того, как изображение будет загружено, оно будет везде отображаться из кеша. Поэтому, если вы сразу наведете мышью на блок, картинка может и не успеет загрузится. Но вот начнется её загрузка во время загрузки всей страницы, а не только тогда, когда сработает onmouseover.

Kenan Bek 06.02.2009 02:58

Ок! спасибо вам огромное.

kolya 17.12.2009 12:43

Извиняюсь за супер ламерский вопрос
 
Но как можно изменить при наведении не картинку на другую картинку, а карту изображения на картинку:
<body>
<body onload="preload('Картинка.jpg')">
<table width="800" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><img src="img/header.jpg" width="800" height="156" border="0" usemap="#Map" /></td>
</tr>
<tr>
<td height="441" background="img/center.jpg">текст</td>
</tr>
<tr>
<td><img src="img/footer.jpg" width="800" height="103" /></td>
</tr>
</table>

<map name="Map" id="Map"><area shape="rect" coords="47,83,202,128" href="about.php"
onMouseOver="ChangeImg('ImgName1','картинк .jpg')"
onMouseOut="ChangeImg('ImgName1','map')">
<img name="ImgName1" border="0"
height="100" width="100"
src="map" alt=""> />
</map></body>
</html>

Понятно, конечно, что это не будет работать, но как лучше сделать?

VovaLun 18.12.2009 15:02

Код:

Но как можно изменить при наведении не картинку на другую картинку, а карту изображения на картинку:
- У меня не менее глупый вопрос к автору...
После замены Карты-изображения на картинку, какие действия предполагаются?
Во всяком случае, как карта УЖЕ НИКОГДА работать не будет.
Я так мыслю :-)

x-yuri 19.12.2009 07:39

а зачем тебе карта изображения, если ты ее на картинку при наведении меняешь?

kolya 19.12.2009 10:55

Ну просто у меня есть уже нарисованная шапка с кнопками (картами изображений), а потом вот решил сделать фишку, чтоб при наведении на кнопку она подсвечивалась..

x-yuri 19.12.2009 11:06

скорее всего тебе не нужна карта изображений (статья)

B~Vladi 22.12.2009 01:18

Карты изображений... Ну когда же сгорят все говнокниги?!:cray:

зы: сори за оффтоп.

Kolyaj 22.12.2009 10:54

B~Vladi,
если ты ни разу не использовал карты изображений, это не значит, что они не нужны.

x-yuri 22.12.2009 11:53

Kolyaj, а ты знаешь примеры, где они используются и нужны?

Kolyaj 22.12.2009 11:57

x-yuri,
приходилось, например, как то делать контрол выбора областей на карте России.

Bitalikpotroshitel 15.12.2010 19:05

У меня такая проблема Вот мой сайт (http://wowworld.net.ru/) и когда наводишь на Меню сайта
Главная страница
Информация о сайте
Интернет-магазин
Каталог файлов
Обратная связь
Гостевая книга
Фотоальбомы
WoW статьи
Форум
Блог
Доска объявлений
Фотошоп онлайн

меняется курсор как его сделать как на этом сайте ?(http://wowjp.net/news/2008-06-05-312)

Bitalikpotroshitel 15.12.2010 19:06

Цитата:

Сообщение от Bitalikpotroshitel (Сообщение 84038)
У меня такая проблема Вот мой сайт (http://wowworld.net.ru/) и когда наводишь на Меню сайта
Главная страница
Информация о сайте
Интернет-магазин
Каталог файлов
Обратная связь
Гостевая книга
Фотоальбомы
WoW статьи
Форум
Блог
Доска объявлений
Фотошоп онлайн

меняется курсор как его сделать как на этом сайте ?(http://wowjp.net/news/2008-06-05-312)

и никак изменить не могу все перепробовал!!

x-yuri 15.12.2010 20:02

google://css custom cursor

Bitalikpotroshitel 16.12.2010 21:46

Цитата:

Сообщение от x-yuri (Сообщение 84057)
google://css custom cursor

Можно по подробнее а то ничего не нахожу !

x-yuri 18.12.2010 01:42

первая ссылка
http://www.google.com.ua/search?clie...utf-8&oe=utf-8

Bitalikpotroshitel 18.12.2010 16:58

Цитата:

Сообщение от x-yuri (Сообщение 84236)

можешь написать как будет код выглядеть полностью а то не пашет !! и куда именно его вставлять ? может я не туда вставляю?

x-yuri 18.12.2010 17:43

а как ты делаешь?

Bitalikpotroshitel 19.12.2010 18:30

<head><style type="text/css">
BODY{cursor:url('http://wowworld.net.ru/humans.cur');}
</style> вставляю это в страницы сайта ! и в таблицу CSS
:help:

x-yuri 19.12.2010 19:27

ну ладно, значит третья ссылка. А вообще, лучше не пугать пользователя "левыми" курсорами ;)

Bitalikpotroshitel 19.12.2010 20:24

<head>
<link rel="stylesheet" type="text/css"
href="cursor/cursor.css"/>
</head>
<body>
Hello world!
Look at me, I have a new cool cursor!
</body>
а что в боди писать?

Bitalikpotroshitel 19.12.2010 20:48

всё сделал спасибо !! помог!!


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