Heim > Web-Frontend > CSS-Tutorial > Auswahlwörter über die bevorstehende Abwertung von JavaScript -Dialogen

Auswahlwörter über die bevorstehende Abwertung von JavaScript -Dialogen

Christopher Nolan
Freigeben: 2025-03-21 10:29:11
Original
362 Leute haben es durchsucht

Auswahlwörter über die bevorstehende Abwertung von JavaScript -Dialogen

Viele JavaScript -Newcomer beginnen mit dieser einfachen Zeile:

 Alarm ("Hallo, Welt");
Nach dem Login kopieren

Die jüngste Entfernung von alert() -Funktionen in Cross-Origin-IFrames durch Chrom verursachte jedoch weit verbreitete Probleme, wie sich durch einen Anstieg der CodePen-Support-Tickets belegt. Diese Änderung sowie die Abwertung anderer native JavaScript-Dialoge wie confirm() , prompt() und onbeforeunload wirkt sich auf Websites wie CodePen erheblich aus, die für die Sicherheit stark auf Cross-Origin-IFrames beruhen. Der Mangel an vorheriger Warnung trug zur Frustration bei.

Während Sicherheitsbedenken verständlich sind (JavaScript -Dialoge erscheinen unabhängig von der Herkunft, potenziell verwirrende Benutzer), übersehen die abrupte Änderung vorhandene Lösungen wie Sandboxen.<iframe sandbox=""></iframe> Bietet robuste Sicherheit und ermöglicht es selektiv, bestimmte Funktionen zu aktivieren (<iframe sandbox="allow-scripts allow-downloads ...etc"></iframe> ). Das vorhandene Attribut allow-modals scheint unzureichend zu sein, was auf ein breiteres Ziel hinweist: vollständige Entfernung von JavaScript-Dialogen von der Webplattform.

Diese drastische Maßnahme würde unzählige Tutorials und Anwendungen brechen. Obwohl sich die Cross-Origin-Beschränkung bis Januar 2022 verzögert, ist die geplante vollständige Entfernung, die von Chrome, Firefox und Safari unterstützt wird, zutiefst besorgniserregend. Der Mangel an ausreichender Entwickler und Benutzerberatung ist eine wesentliche Kritik.

Die vorgeschlagene Alternative, postMessage , präsentiert mehrere Nachteile:

  1. Nicht blockierendes Verhalten: Im Gegensatz zu JavaScript-Dialogen stellt postMessage die Ausführung nicht ein und ändert den Anwendungsfluss.
  2. CODE -Injektion: Die Entwickler müssen den Codes in den Benutzercode injizieren, fördert technische Schulden und unerwartete Nebenwirkungen (z. B. Änderungen des CSS -Selektorverhaltens).
  3. Sicherheitsrisiken: Das Übergeben von Benutzer erstellten Daten an den übergeordneten Frame führt potenzielle XSS-Schwachstellen ein.

Noch einfachere Problemumgehungen wie window.alert = console.log teilen ähnliche Probleme.

Viele Entwickler haben Bedenken geäußert:

  • Jaden Baptista: Schlägt vor, die Warnung innerhalb des Iframe selbst zu enthalten und sowohl die Sicherheit als auch die UX zu verbessern.
  • Matthew Phillips: kritisiert die Entscheidung als Priorisierung bestimmter Websites gegenüber anderen.
  • Dan Abramov: Äußerdem Besorgnis über den Mangel an Respekt vor bestehenden Anwendungsfällen und der Komplexität der Implementierung.
  • Ben Lesh: Weist darauf hin, dass einige Anwendungen die Blockierung von alert() als Merkmal verwenden (z. B. pausierende Spiele).

Die zitierte Metrik von 0,006% der Seitenansichten unter Verwendung dieser Funktionen in Kreuzungsproblemen ist irreführend, wie Dan Abramov hervorhebt: Kritische Funktionen wie die Löschung von Richtlinien, die möglicherweise nicht häufig zugegriffen werden, sind jedoch dennoch wesentlich.

Chris Ferdinandi und Jeremy Keith betonen ferner die mangelnde Kommunikation und die erheblichen Auswirkungen auf die Webentwicklung. Die herablassenden Antworten einiger in Google verschlimmern das Problem nur.

Während die Kritik die Beiträge von Google zum Webaufstieg anerkennt, konzentriert sie sich auf den Mangel an Entwicklern und die Öffentlichkeitsarbeit, die unzureichende Diskussion über Implikationen und Übergangsstrategien und mangelnde Offenheit für die Anpassung des Handlungsverfahrens. Kollaborativere und transparente Prozesse sind für zukünftige Änderungen der Webplattform von entscheidender Bedeutung.

Das obige ist der detaillierte Inhalt vonAuswahlwörter über die bevorstehende Abwertung von JavaScript -Dialogen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage