Когда я пытаюсь использовать метод jQuery next()
, он не работает с live()
.jQuery next() не работает с live()
Во-первых, вот мой код:
$(".toggle_button").live('click', function() {
$(this).html($(this).html() == '-' ? '+' : '-');
$(this).next(".info_section").toggle(400);
});
Вот HTML
<div class='section_toggle_container'>
<div class='toggle_button'>-</div>
<strong>Driver Information:</strong>
</div>
<div class='info_section'>
info here
</div>
ли проблема может быть, лежит в том, что .toggle_button
вложен, что делает .info_section
недостижим?
Вторая линия отлично работает, потому что она модифицирует элемент, учитывая событие live()
. Третья строка, однако, заключается в том, где проблема. Это потому, что он использует next()
.
Может ли кто-нибудь помочь мне с решением для моей проблемы next()
?
Вам нужно будет показать HTML, на который это распространяется, я думаю. Возможно ли, что после элемента '.toggle_button' нет' .info_section'? Или вы уничтожаете 'this' с вызовом' .html() 'в строке выше? Попробуйте вместо этого использовать '.text()'. – Orbling
можем ли мы увидеть ваш HTML-код? – amosrivera
В чем проблема? ** Как выглядит ваш HTML-код?** 'next()' будет возвращать только элемент ** тогда и только тогда, когда ** следующий родной брат 'this' имеет класс' info_section'. Это ** не ** возвращает следующего брата с классом 'info_section'. –