jQuery связанные события окна и контент AJAX - PullRequest
0 голосов
/ 21 марта 2012

У меня есть немного jQuery, который связывает событие ориентации со страницей, которое при изменении ориентации удаляет кучу объектов со страницы:

$(window).bind('orientationchange',function(event){
    $('.tooltip-popup').remove();
})

Это работает. При изменении ориентации любой объект с этим классом удаляется из DOM.

Однако, если мы затем загружаем больше этих объектов через AJAX, эти элементы не удаляются при изменении ориентации.

Это сбивает с толку, поскольку я предполагал, что при изменении ориентации DOM запрашивается для поиска указанных элементов, поэтому он должен найти все элементы, независимо от того, были ли они загружены через AJAX или нет.

Мое предположение неверно и что DOM запрашивается при начальной загрузке страницы и, следовательно, никогда не узнает об объектах, загруженных через AJAX, если я вместо этого не использую delegate для привязки события?

Использование delegate, конечно, достаточно просто, но я хотел убедиться, что понял, что происходит.

1 Ответ

0 голосов
/ 21 марта 2012

Я думаю, что проблема заключается в том, что ваши элементы dom, добавленные динамически, не связаны с событием. Возможное решение - использовать .live() или, для более поздних версий jquery .on()

...