Проблема с элементами, добавленными с помощью append()
Есть строка, которая отвечает за добавление блока на страничку:
$('#category').append('<div class="addSubcategory"><div></div></div>'); И есть код, который отвечает за работу с этим блоком: $('.addSubcategory').hover( function(){ $(this).find('div').stop().animate({opacity: '1'}, 200); }, function(){ $(this).find('div').stop().animate({opacity: '0'}, 200); } ); Ну так вот, когда я добавляю блок с помощью jQuery - не реагирует блок на наведение, а когда блок уже вставлен непосредственно в коде, то всё работает отлично. Что нужно сделать, чтобы элементы, добавленные через append() работали так же хорошо, как и через код? Или есть другие функции? |
Цитата:
Либо использовать http://jquery-docs.ru/Events/live |
Обьедени добавлеие элемента на страницу и создание обработчика в один метод.
function addSubCategory(){ // добавляем элемент на страницу $('#category').append('<div class="addSubcategory"><div></div></div>'); // вешаем на вновь добавленный элемент обработчик $('.addSubcategory').hover( function(){ $(this).find('div').stop().animate({opacity: '1'}, 200); }, function(){ $(this).find('div').stop().animate({opacity: '0'}, 200); } ); // теперь когда тебе понадобится суб категория ты просто вызовешь метод addSubCategory // пример addSubCategory(); |
Часовой пояс GMT +3, время: 09:01. |