Artikelverzeichnis
- 1 Die Wurzel des Problems: Es ist nicht so, dass du es falsch geschrieben hast, sondern dass die Zeit dich im Stich gelassen hat.
- 2 Warum hat Android zuerst Maßnahmen ergriffen?
- 3 Lösung: Erledigen Sie es in drei Sekunden
- 4 Dies ist eigentlich eine "Liquidation"
- 5 Worauf sollten Entwickler achten?
- 6 Fazit: Hinter jeder Codezeile steckt die technologische Evolution
- 7 Abschließende Zusammenfassung
Sie dachten, die Website sei in Ordnung und der JS-Code stabil wie ein alter Hund, aber sobald Sie die mobile Browserversion geändert haben, „streikte“ die Seite?
Das Unverschämteste ist: Der Computer läuft normal,AndroidAber das Telefon ignoriert Sie völlig.
Das ist kein Witz, es handelt sich um ein Browserproblem, das im Stillen aufgetreten ist.
Die Wurzel des Problems: Es ist nicht so, dass du es falsch geschrieben hast, sondern dass die Zeit dich im Stich gelassen hat.

Tatsächlich ist die erste Reaktion der meisten Entwickler, wenn sie dieses Phänomen sehen: Liegt ein Fehler in der JS-Syntax vor? Wird das DOM nicht geladen? Oder ist die Berechtigung blockiert?
Das Ergebnis? Keines von beidem. Der wahre Übeltäter war die alte Schrift:
<script language="javascript">
Diese Codezeile war vor 20 Jahren beliebt无限, die in allen Tutorials zu sehen sind.
Aber in Chromium-Version 119Danach verabschiedete sich Google von dieser „alten Grammatik“: Solange Sie sehen language Attribute werden vom Browser selektiv ignoriert und es wird nicht einmal die Mühe gemacht, sie zu erklären.
Aus Kompatibilitätsgründen kümmert sich Chrome auf dem Desktop noch „vorübergehend darum“, aber Chrome auf dem mobilen Android ist die „Vorreiterin“ und hat diese Bereinigungsstrategie sofort aktiviert.
So erschien es:Der Computer funktioniert einwandfrei, aber das Mobiltelefon funktioniert nichtDas Problem.
Warum hat Android zuerst Maßnahmen ergriffen?
Manche Leute fragen sich vielleicht: Warum wird Android Chrome zuerst eingeführt?
Das ist ganz einfach, denn die Aktualisierungsgeschwindigkeit mobiler Endgeräte ist höher und Google verbreitet Informationen so schnell wie rote Umschläge.
在 2023. Oktober 10, die Android-Version von Chrome 119 wurde vollständig über Google Play bereitgestellt.
Obwohl auch die Desktop-Version den Chromium-Kernel nutzt, ist es üblich, „die Hand im Auge zu behalten“, um zu vermeiden, dass plötzlich eine große Anzahl interner Unternehmenssysteme in die Luft fliegt.
Wenn Sie also immer noch den Ausdruck „language=javascript", auf Android-Telefonen ist dies gleichbedeutend mit dem Schreiben eines transparenten Codes, den der Browser direkt ignoriert.
Lösung: Erledigen Sie es in drei Sekunden
Glücklicherweise ist die Lösung für dieses Problem unglaublich einfach. Ersetzen Sie einfach diese Zeile:
<script>
Oder etwas formeller:
<script type="text/javascript">
Die Änderung dauert nur wenige Sekunden und wird von Android Chrome sofort ausgeführt.
Denken Sie daran, nach der ÄnderungCache-Aktualisierung erzwingenAndernfalls liest der Browser möglicherweise noch die alte Datei. Die Methode ist ebenfalls einfach:
- Computer: Strg + F5
- Telefon: Einstellungen → Datenschutz → Cache leeren
Nach der Aktualisierung wird der Code innerhalb von Sekunden wiederhergestellt und die Seite wird erneut ausgeführt.
Dies ist eigentlich eine "Liquidation"
Letztendlich ist das Problem diesmal nicht das Problem von JS selbst, sondernDie Ära des Front-End-Legacy-Codes.
Die Aufgabe der Browserhersteller ist ganz klar: Sie müssen die veraltete Syntax schrittweise bereinigen und die Entwickler zu Aktualisierungen zwingen.
Es ist wie auf einer Autobahn: Dreiräder und Traktoren durften früher nebeneinander fahren, heute müssen sie aus Sicherheitsgründen vertrieben werden. language="javascript" Dieser Traktor hätte nicht auf der Überholspur sein dürfen.
Worauf sollten Entwickler achten?
Dieser Vorfall dient uns als sehr realistische Erinnerung:
Codierungsstandards sind wirklich wichtig Der Code, von dem Sie denken, dass er „einfach funktioniert“, funktioniert in einer bestimmten Version möglicherweise nicht mehr.
Die Testumgebung muss mit dem Tempo Schritt halten Klicken Sie nicht einfach auf Ihrem Computer auf Chrome und veröffentlichen Sie es. Sie müssen es auf Mobilgeräten und verschiedenen Browserversionen überprüfen.
Verfolgen Sie die Update-Protokolle des Browsers Bei jedem Upgrade von Chromium kommt es zu zahlreichen „Veraltungen und Entfernungen“. Diese sind keine Dekoration, sondern können Ihr Geschäft wirklich ruinieren.
Fazit: Hinter jeder Codezeile steckt die technologische Evolution
Viele Leute beklagen, dass Google „unethisch“ sei, doch aus einer höheren Perspektive betrachtet handelt es sich dabei tatsächlich um einen unvermeidlichen Prozess, der das gesamte Web-Ökosystem vorantreibt.
Die Beseitigung alter Attribute und die Verpflichtung der Entwickler, Standards einzuhalten, ist die Iteration der technologischen Zivilisation.
Wenn wir weiterhin mit der gesamten veralteten Syntax kompatibel sind, wird das Frontend früher oder später zu einem Topf mit heruntergekommenem Sammelsurium.
Wenn wir also dieses kleine Loch reparieren, nehmen wir tatsächlich an einer „Reinigungsbewegung der technologischen Zivilisation“ teil.
In den nächsten Jahren wird es immer mehr solcher Fallstricke geben, und das einzige Gegenmittel istMit der Zeit Schritt halten und Standards übernehmen.
Abschließende Zusammenfassung
- Computer können es ausführen, Android jedoch nicht, weil
<script language="javascript">Veraltet. - 从 Chrom 119 Android Chrome übernimmt die Führung beim Überspringen
languageAttribut<script>块。 - Die Lösung ist: Verwenden Sie
<script>或<script type="text/javascript">. - Aktualisieren Sie nach der Änderung den Cache und das Problem wird behoben.
- Entwickler sollten stets auf Browser-Updates achten und sich angewöhnen, Code standardisiert zu schreiben.
Wenn Sie also das nächste Mal auf einen seltsamen Fehler stoßen, bei dem der Computer einwandfrei funktioniert, das Telefon jedoch nicht, können Sie genauso gut darüber nachdenken: Ist in Ihrem Code ein „Relikt aus dem letzten Jahrhundert“ versteckt?
Hoffnung Chen Weiliang Blog ( https://www.chenweiliang.com/ ) hat „Warum schlägt JS-Code in Android Chrome fehl? Der Grund für die Nichtausführung wird aufgedeckt und eine Ein-Klick-Lösung!“ geteilt, die für Sie hilfreich sein kann.
Willkommen, um den Link dieses Artikels zu teilen:https://www.chenweiliang.com/cwl-33236.html
