есть ли другая функция вместо live () в jquery 1.26? - PullRequest
0 голосов
/ 11 апреля 2011
$('#content').find('p:eq(0)').append('<span class="more"> | more</span><span class="less"> | less</span>')
$('p:gt(0)').hide();

$('.more, .less').live('click', function() {
    $('#content').find('p:gt(0)').slideToggle();
    $('.more, .less').toggle();
})

jquery 1.26, он не поддерживает функцию live(). есть ли другая функция вместо него. или изменить код, чтобы получить эффект?

я использую drupal-6, если я не хочу обновлять jquery. есть ли способ получить эффект?

Ответы [ 3 ]

4 голосов
/ 11 апреля 2011

Вы можете добавить обычный обработчик click к .content, а затем проверить, $(e.target).is('.more, .less').

Так работает live() внутри.

1 голос
/ 11 апреля 2011

в jQuery 1.26 нет .live(), поэтому вы должны искать livequery .

0 голосов
/ 11 апреля 2011

После добавления диапазона вы можете использовать $ ('. More'). Bind ('click', function () {etc}) Но вы не можете объявить метод .bind в document.ready, если вы не добавили clickable элемент перед.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...