Функция each.
Цель: дать класс именно тому элементу, на который было наведение мыши.
$(function(){ $('#panel nav a').each(function(){ $(this).hover( function(){ $('#panel nav a img').addClass('effect'); }, function(){ $('#panel nav a img').removeClass('effect'); }); }); }); Проблема: класс присваивается всем элементам. Где ошибка? |
$(function(){ $('#panel nav a').each(function(){ $(this).hover( function(){ $(this).find('img').addClass('effect'); }, function(){ $(this).find('img').removeClass('effect'); }); }); }); |
:write:
Вариант ... <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8" /> <style type="text/css"> .effect{ display: block; } img{ display: none; } </style> <script src="http://code.jquery.com/jquery-latest.js"></script> <script> $(function(){ $('#panel nav a').hover(function(){ $('img',this).toggleClass('effect') }); }); </script> </head> <body> <div id="panel"> <nav> <a href="1.html">Чебурашка<img src="http://javascript.ru/forum/images/smilies/dance3.gif" alt=""></a> <br><a href="2.html">Гена<img src="http://javascript.ru/forum/images/smilies/victory.gif" alt=""></a> </nav> </div> </body> </html> |
Спасибо вам большое, парни. Все понял :)
|
Часовой пояс GMT +3, время: 04:04. |