Действительно простое живое преобразование в on терпит неудачу. Динамический контент - PullRequest
0 голосов
/ 26 ноября 2011

Это действительно легко, но я не могу заставить его работать. У меня есть следующая (старая) функция, которая обрабатывает клики на моей карусели:

$('#cycleDiv img').live('click', function () {
    alert('hh');
});

Поскольку .live плохая вещь, я бы хотел преобразовать эту простую функцию в .on, но, заменив live, ничего не происходит. Я также попробовал:

$('#cycleDiv').on('click', 'img', function () {
        alert('hh');
});

Но ничего не происходит. Я посмотрел на документацию, но не могу понять это.

Кроме того, изображения загружаются с помощью AJAX, так что это касается динамического контента. Я знаю, .on работает со статическими элементами на моем сайте.

Что я делаю не так?

1 Ответ

1 голос
/ 26 ноября 2011

Если DIV добавляется также через AJAX, вам необходимо делегировать обработчик в документ.Посмотрите, работает ли это:

$(document).on('click', '#cycleDiv img', function () {
        alert('hh');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...