2010-07-26 2 views
1

У меня есть HTML-таблицы с несколькими строками, я включил функцию Jquery какJQuery вопрос, onmouse над событием не работает на новой строке

$('tr').mouseover(function() { 
    $(this).addClass('row_over'); 
}); 

так что на мыши над классом CSS этой конкретной строки изменения. то я добавил еще одну строку, используя jquery, но функция мыши над функцией не работает с динамически добавленной строкой, функция mouse over работает во всех строках, кроме этой новой.

Пожалуйста, помогите мне SORTOUT этот вопрос

Спасибо

ответ

0

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

+0

Спасибо, он работает сейчас :) – milan

3

Вместо использования .mouseover, вам нужно использовать .live

$('tr').live('mouseover', function() { 
    $(this).addClass('row_over'); 
}); 

Однако будьте осторожны при использовании .live() метод есть хит производительности для его использования.

Если вы можете, при добавлении новой строки, попробуйте назначить новую MouseOver для этой строки динамически:

row = addNewRow(); 
row.mouseover(function() { ... }); 
+0

Спасибо, он работает сейчас :) – milan

+0

Было бы безопаснее использовать mouseover() вместо live() и привязать функцию к новым строкам таблицы по мере их создания? – Carson63000

+0

@ Carson63000 вот что я сказал в своем посте. –