DOM Core Completeness – innerHTML, querySelectorAll, insertAdjacent*, scroll*, child navigation #119
Labels
No labels
bug
docs
feature
housekeeping
html-spec
performance
react-compat
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
glow-all/true-headless-browser#119
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Gap
Unsere Element/Document Implementierung hat Lücken in der DOM Core API. Folgende Methoden fehlen:
Fehlende Element-Methoden
innerHTML/outerHTML- HTML Serialisierung auf Element-Ebene (wichtig für JS frameworks die .innerHTML setzen)insertAdjacentHTML()/insertAdjacentElement()/insertAdjacentText()- wichtig für viele Librariesafter()/before()/append()/prepend()- Child-Manipulation (DOM spec)replaceWith()/remove()- Self-ManipulationscrollIntoView()/scroll()/scrollTo()/scrollBy()- Scroll-APIs (noop erlaubt, aber existieren müssen sie)scrollTop/scrollLeft/scrollWidth/scrollHeight/clientWidth/clientHeight- Layout-API (return 0 erlaubt)getBoundingClientRect()/getClientRects()- Layout-API (return DOMRect mit 0-en)previousElementSibling/nextElementSibling- fehlen kompletttoggleAttribute()- conveniencegetAttributeNames()- fehltsetPointerCapture()/releasePointerCapture()/hasPointerCapture()- Pointer Lock (noop)webkitMatchesSelector()- Safari compatibilityFehlende Document-Methoden
querySelector()/querySelectorAll()auf Document (aktuell nur via configureSelectorEngine)forms/images/links/scripts/stylesheets- HTMLCollection-ZugriffecreateEvent()- Legacy Event CreationadoptNode()/importNode()- Cross-Document-Node-Transferdocument.URL/document.domain/document.referrer- Location-Properties auf Documentcookie- Cookie-API (aktuell nur via CookieJar, nicht auf document.cookie)title- get/set document.titlehidden/visibilityState- Page Visibility APIhasFocus()- Focus APIcurrentScript- aktuell in script-loader, muss auf documentfonts- Font Loading API (noop Set)timeline- Performance Timeline (noop)Labels
feature, html-spec
Architektur
Tests
Jede Methode: Existenz, Rückgabetyp, spec-korrektes Verhalten
✅ Issue #119 — DOM Core Completeness gelöst in
Geliefert (~80 neue APIs)
Element API (~50)
Document API (~30)
✅ innerHTML Setter + Rendering Pipeline — Abgeschlossen
Branch:
feat/issue-118-119-dom-perfectionNeu implementiert:
Element.innerHTMLsetter (lazy-parsed via HTML5 Tokenizer + TreeBuilder in Fragment-Mode)require()(kein Circular Dependency)classNamesetter-Fix:_syncClassAttr()nach Parsing🧪 34 Rendering Pipeline Tests
⚡ Performance-Zahlen
🔮 Next Step
Issue #128 eröffnet: html5ever Native Addon — Rust-Parser als N-API Addon. 100KB in <0.3ms (30× schneller), Parallel-Parsing.