Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

`Document.parseHTMLUnsafe` drops HTML comments in Chrome 155, so swapped content loses them

Chiusa Adatta ai principianti
#4,147 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 2 giorni

@Aashu-1911 ci sta già lavorando.

Dal 18/10/2026.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
65/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
html, javascript
Ambito
frontend

Direzione di ricerca

Inizia leggendo la selezione del parsing HTML introdotta in #3185 e segui come htmx sceglie tra Document.parseHTMLUnsafe e DOMParser. Aggiungi test per i commenti HTML nel contenuto scambiato, incluso il comportamento segnalato di Chrome, e verifica che l’opzione di configurazione proposta selezioni DOMParser. Il lavoro è completo quando gli utenti possono scegliere un parsing che preserva i commenti e la regressione è coperta dai test.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

In Chrome 155, Document.parseHTMLUnsafe drops every HTML comment. DOMParser keeps them, and Chromium 148 kept them too. htmx 2 and htmx 4 both prefer parseHTMLUnsafe when the browser has it (since #3185), so any comment in swapped content is lost.

Input Chrome 155 parseHTMLUnsafe Chrome 155 DOMParser Chromium 148 parseHTMLUnsafe
<p>a<!-- x -->b</p> <p>ab</p> <p>a<!-- x -->b</p> <p>a<!-- x -->b</p>
<p>a<!---->b</p> <p>ab</p> <p>a<!---->b</p> <p>a<!---->b</p>

This breaks libraries that hydrate server-rendered HTML using comment markers. For example, Leptos islands swapped in by htmx 2 fail to hydrate (htmx 4 calls the same function, not tested in Chrome 155). The workaround today is delete Document.parseHTMLUnsafe before htmx loads (https://github.com/leptos-rs/leptos/pull/4910).

It's a Chrome bug, reported a month ago: https://issues.chromium.org/issues/562116090 (point 3). Passing {} as the second argument, Document.parseHTMLUnsafe(html, {}), keeps the comments, and is correct per spec. Would you take a PR for that one-line change?

Drafted with Claude, reviewed by me.

Lingua principale
JavaScript
Stelle
49.6k
Fork
1.7k
Merge medio
22h 2m
PR unite (30g)
6

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di bigskysoftware/htmx

Tutte le issue di bigskysoftware/htmx

Issue simili

Altre issue su JavaScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.