Este exemplo demonstra o seguinte:

","image":"http://www.luping.net/uploads/20241216/1734319450675f9d5a75a0f.jpg1734319450675f9d5a75a1a.jpg","datePublished":"2024-12-16T11:40:18+08:00","dateModified":"2024-12-16T11:40:18+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso detectar e responder com eficácia às alterações do DOM em JavaScript?

Como posso detectar e responder com eficácia às alterações do DOM em JavaScript?

Publicado em 16/12/2024
Navegar:172

How Can I Effectively Detect and Respond to DOM Changes in JavaScript?

Detectando mudanças no DOM de maneira eficaz

Observar mudanças no DOM é crucial para criar aplicativos da web dinâmicos que respondam às interações do usuário. Uma abordagem amplamente utilizada envolve o aproveitamento do MutationObserver, uma API moderna que permite observar modificações no DOM. Essa abordagem é suportada pela maioria dos navegadores modernos, incluindo IE11, Firefox e WebKit.

Para implementar isso, você pode usar as seguintes etapas:

var observeDOM = (function() {
  var MutationObserver = window.MutationObserver || window.WebKitMutationObserver;

  return function(obj, callback) {
    if (!obj || obj.nodeType !== 1) {
      return;
    }

    if (MutationObserver) {
      var mutationObserver = new MutationObserver(callback);
      mutationObserver.observe(obj, {childList: true, subtree: true});
      return mutationObserver;
    } else if (window.addEventListener) { // browser support fallback
      obj.addEventListener('DOMNodeInserted', callback, false);
      obj.addEventListener('DOMNodeRemoved', callback, false);
    }
  }
})();

Esta função recebe um elemento (obj) e uma função de retorno de chamada (retorno de chamada) como argumentos. O retorno de chamada será executado sempre que uma alteração for feita no elemento ou em seus filhos.

Para demonstrar o uso, considere este exemplo:

Este exemplo demonstra o seguinte:

  • Adicionando um item à lista
  • Removendo um item da lista
  • Usando MutationObserver para detectar alterações na lista. Isso pode ser usado para realizar diversas ações, como modificar a IU ou atualizar dados de back-end.
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3