Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: onMouseOver и OnMouseOut
 
 автор: Onebythinkart   (14.09.2007 в 12:28)   письмо автору
 
 

Есть код, для смены изображения при наведении, но он не работает :-(

<div onmouseover="document.m01.style.backgroundImage='design/images_main/meny_on.png'" onmouseout="document.m01.style.backgroundImage='design/images_main/meny_off.png'" id="m01" class="meny" style="background-image:url(design/images_main/meny_off.png);">
</div>


ЗЫ И еще вопрос, а как подгрузить картинку(может даже не одну) заранее???

   
 
 автор: AlexSol   (14.09.2007 в 12:41)   письмо автору
 
   для: Onebythinkart   (14.09.2007 в 12:28)
 


<div onmouseover="this.style.backgroundImage='design/images_main/meny_on.png'"
если картинок только две, то есть альтернатива сменить картинку на css

   
 
 автор: Onebythinkart   (14.09.2007 в 12:52)   письмо автору
 
   для: AlexSol   (14.09.2007 в 12:41)
 

хм, довольно просто, но тогда вопрос, мне нужно чтобы при наведении именно на div, менялась картинка, т.е. делать так: <a ...> <div> </div> </a> ???

ЗЫ и всё таки интересно почему не работает мой код))

   
 
 автор: sim5   (14.09.2007 в 13:38)   письмо автору
 
   для: Onebythinkart   (14.09.2007 в 12:52)
 


<div class="meny" id="m01" style="background-image: url(design/images_main/meny_off.png); border: 1px solid Black;"
onMouseOver="this.style.background='url(design/images_main/meny_on.png)'"
onMouseOut="this.style.background='url(design/images_main/meny_off.png)'">
Это элемент со сменой фона</div>

   
 
 автор: Onebythinkart   (14.09.2007 в 13:50)   письмо автору
 
   для: sim5   (14.09.2007 в 13:38)
 

Спс!!!
И я в самом начале уже задавал этот вопрос, но задам еще раз:
а как подгрузить картинку заранее?

   
 
 автор: sim5   (14.09.2007 в 13:59)   письмо автору
 
   для: Onebythinkart   (14.09.2007 в 13:50)
 

Пример выше плох тем, что наблюдается задержка. Чтобы этого не было, нужно заранее подключать файлы (кешировать). Это можно сделать двумя способами - чере JS или CSS. Думаю лучше использовать CSS, тогда в событиях вам нужно будет менять не стиль элемента, а его класс (имя). И не обращайтесь вы к Id элемента (если речь конечно не идет о другом) - пишите this.

   
 
 автор: Onebythinkart   (14.09.2007 в 16:15)   письмо автору
 
   для: sim5   (14.09.2007 в 13:59)
 

Ну до этого я и сам допер, а вот КАК, вопрос на миллион)))

   
 
 автор: sim5   (14.09.2007 в 16:21)   письмо автору
 
   для: Onebythinkart   (14.09.2007 в 16:15)
 


onMouseOver="this.className='имя2 вашего класса'" 
onMouseOut="this.className='имя1 вашего класса'"> 

Соотвественно класс для эемента по умолчанию должен быть указан как "имя1". Это через CSS - думаю до этого доперли?))

   
 
 автор: valenok   (14.09.2007 в 23:01)   письмо автору
 
   для: sim5   (14.09.2007 в 16:21)
 


onMouseOver="this.className='имя2 вашего класса'" 
onMouseOut="this.className='имя1 вашего класса'">  


this.className прокатывает только на IE
Для остальных пишем this.setAttribute('class','clsName');

   
 
 автор: AlexSol   (14.09.2007 в 23:04)   письмо автору
 
   для: valenok   (14.09.2007 в 23:01)
 

valenok, ты неправ. className - какраз для всех.

   
 
 автор: valenok   (14.09.2007 в 23:16)   письмо автору
 
   для: AlexSol   (14.09.2007 в 23:04)
 

Да ? Ух ты. Секнс

   
 
 автор: wawilon   (14.09.2007 в 22:49)   письмо автору
 
   для: Onebythinkart   (14.09.2007 в 13:50)
 

img_tmp=new Image();
img_tmp.src='URL картинки';

Создается объект класса image и его адрес задается сразу. Изображение загрузится при выполнении этого кода. А уже когда будешь менять на него динамически, то оно будет грузиться из кеша.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования