Обратный вызов на удаление элемента из дерева DOM? - PullRequest
1 голос
/ 09 августа 2011

Если у меня есть элемент DOM, который динамически добавляется на страницу, а затем удаляется с помощью $("#id").remove() в jQuery, возможно ли настроить обратный вызов, поэтому, когда элемент удаляется, я могу выполнить пользовательское действие.

Я думал о методе jQuery remove() для исправления обезьян, поэтому я могу проверить идентификатор элемента и, если он соответствует желаемому, выполнить обратный вызов, но я не уверен, как .

Есть ли лучшие способы сделать это? И как я могу сделать это, используя патч обезьян?

(я пишу скрипт greasemonkey и не могу изменить базовую реализацию)

1 Ответ

3 голосов
/ 09 августа 2011

Вы можете прослушать событие DOMNodeRemoved и затем отфильтровать его по требуемому элементу.

$( "body" ).bind("DOMNodeRemoved", function(e){

  if(e.target.id == "id") {
     // do something
  }
});

Как обычно, есть предостережение только для IE, поэтому ознакомьтесь с этим сообщением: http://www.bennadel.com/blog/1623-Ask-Ben-Detecting-When-DOM-Elements-Have-Been-Removed-With-jQuery.htm

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