Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

324
Views
Mutation Observer no detecta el elemento original, detecta su duplicado

Escribí una extensión de Chrome que carga un script con run_at establecido en document_start .

Mi secuencia de comandos usa Mutation Observer para invocar algún código al agregar un elemento con id X a una determinada página web.

Ese elemento se crea cuando la página se carga por primera vez y luego se vuelve a crear cuando parte de la página se vuelve a cargar después de hacer clic en un botón.

Mi observador de mutaciones no detecta ese elemento en ninguno de los dos casos.

Sin embargo, si duplico el elemento (Herramientas para desarrolladores > Elementos > elemento > menú contextual > Elemento duplicado), entonces mi observador de mutaciones detecta el duplicado.

Realicé una prueba: cambié la identificación de algún elemento aleatorio a X . No fue detectado. Eso me ha hecho sospechar que el elemento original se crea primero y luego se asigna o actualiza su identificación. No estoy seguro de cómo podría probar o refutar esta teoría (el proceso de generar el código de la página web parece muy complejo, con capas y capas de secuencias de comandos involucradas, y tengo muy poca experiencia).

¿Tiene sentido esta teoría? ¿Puedo observar un cambio de identificación? Si la teoría no tiene sentido o si es imposible observar un cambio de identidad, ¿qué alternativas tengo?

¡Gracias!


Editar:

Mi código se ve así:

 const observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { for (let i = 0; i < mutation.addedNodes.length; i++) { if (mutation.addedNodes[i].id == "X") { alert("X detected!"); }; }; }); }); observer.observe(document, { attributes: true, characterData: true, childList: true, subtree: true });
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!