Incorrect target reported in all MutationRecords of type `childList`
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 50/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript
- Área
- web-dev
Línea de trabajo
Comienza en esm/interface/mutation-observer.js en la ubicación enlazada y ejecuta la reproducción usando parseHTML y MutationObserver. Verifica que un childList MutationRecord informe del nodo padre de los nodos insertados o eliminados como su target, de modo que la aserción observe BODY en lugar de #document.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Running this code:
import { parseHTML } from "linkedom";
const { document, MutationObserver } = parseHTML(
"<!doctype html><html><head></head><body>",
);
let mo = new MutationObserver((records) => {
let { nodeName } = records[0].target;
console.assert(nodeName === "BODY", `Expected BODY, got ${nodeName}.`);
});
mo.observe(document, { subtree: true, childList: true });
document.body.appendChild(document.createTextNode(""));
results in this error:
Assertion failed: Expected BODY, got #document.
If I'm reading it correctly, it looks like the target for a mutation is always reported as the node passed to observe (at least for childList) which is incorrect; for the childList MutationRecord type, the target should be the parentNode of the inserted/removed node(s).
- Lenguaje dominante
- HTML
- Estrellas
- 2.1k
- Forks
- 104
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de WebReflection/linkedom
-
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
WebReflection/linkedom#329 · 5 comentarios ·
-
`el.style.property = ''` and `e.style.setProperty('property', '')` should delete the property Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 52/100
WebReflection/linkedom#327 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
WebReflection/linkedom#326 · 5 comentarios ·
-
Build Apps For AI Agent. Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
WebReflection/linkedom#321 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
WebReflection/linkedom#318 · 5 comentarios ·
Todos los issues de WebReflection/linkedom
Issues similares
-
refactor
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
-
Issue-Bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
sugarlabs/musicblocks#8924 ·
-
dragonball.fandom.com AbiertoN: AdGuard Browser Extension P2: High T: Annoyance
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
AdguardTeam/AdguardFilters#242499 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
paperclipai/paperclip#13957 ·
-
[Bug]: Console does not validate "Confirm new password" when a user changes their own password Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100