Можно ли запустить .live (), когда объекты входят в дерево DOM? - PullRequest
1 голос
/ 16 июня 2011

Теперь я делаю это так:

$('div.myDiv').live('mouseenter',function() {    }

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

Ответы [ 2 ]

2 голосов
/ 16 июня 2011

Вы можете использовать событие DOMNodeInserted для элементов контейнера, в которые будут добавлены новые элементы.

1 голос
/ 16 июня 2011

Плагин livequery обеспечивает эту функциональность:

$('div.myDiv').livequery(function() {
    $(this).mouseenter(function() {
        alert("!");
    }).mouseenter();
});

Или, если вы хотите что-то сделать только при создании элемента:

$('div.myDiv').livequery(function() { alert("!"); });

Вот сообщение в блоге , показывающее, как это работает .

А вот демоверсия на jsfiddle

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