Cikkkönyvtár
- 1 A probléma gyökere: Nem az, hogy rosszul írtad, hanem az idők hagytak el.
- 2 Miért az Android lépett először?
- 3 Megoldás: Végezd el három másodperc alatt
- 4 Ez valójában egy "felszámolás".
- 5 Mire kell figyelniük a fejlesztőknek?
- 6 Konklúzió: Egy sornyi kód mögött technológiai fejlődés áll
- 7 Végső összefoglaló
Azt hitted, hogy a weboldal rendben van, és a JS kód is stabil, mint egy öreg kutya, de amint megváltoztattad a mobil böngésző verzióját, az oldal "sztrájkba kezdett"?
A legfelháborítóbb dolog az, hogy a számítógép normálisan fut,AndrewsDe a telefon teljesen figyelmen kívül hagy téged.
Ez nem vicc, ez egy böngészőprobléma, ami csendben jelentkezik.
A probléma gyökere: Nem az, hogy rosszul írtad, hanem az idők hagytak el.

Valójában, amikor a legtöbb fejlesztő ezt a jelenséget látja, az első reakciója a következő: Van valami hiba a JS szintaxisában? Nincs betöltve a DOM? Vagy a jogosultságok blokkolva vannak?
Az eredmény? Egyik sem. Az igazi bűnösnek az az ősi írás bizonyult:
<script language="javascript">
Ez a kódsor népszerű volt 20 évvel ezelőttkorlátlan, ami az összes oktatóanyagban látható.
但在 Chromium 119-es verzióEzután a Google búcsút intett ennek az „antik nyelvtannak”: amíg csak látod language Attribútumok, a böngésző szelektíven figyelmen kívül hagyja őket, és még csak nem is veszi a fáradságot, hogy elmagyarázza őket.
Kompatibilitási okokból az asztali Chrome még „ideiglenesen megoldja a problémát”, de a mobilos Androidon a Chrome az „élcsapat”, és azonnal engedélyezte ezt a tisztítási stratégiát.
Szóval megjelent:A számítógép jól működik, de a mobiltelefon nemA probléma.
Miért az Android lépett először?
Egyesek megkérdezhetik: Miért indult el először az Android Chrome?
Nagyon egyszerű, mivel a mobil terminál frissítési üteme gyorsabb, és a Google olyan gyorsan küldi az információkat, mint a piros borítékokat.
在 2023 年 10 月 31 日A Chrome 119-es Android-verziója teljes mértékben elérhetővé vált a Google Playen.
Bár az asztali verzió is a Chromium kernelt használja, szokás "kezet tartani", hogy elkerüljük a nagyszámú belső vállalati rendszer hirtelen felrobbantását.
Szóval, ha még mindig használod a kifejezést: "language=javascript", Androidos telefonokon ez egyenértékű egy átlátszó kód írásával, amelyet a böngésző közvetlenül figyelmen kívül hagy.
Megoldás: Végezd el három másodperc alatt
Szerencsére a probléma megoldása hihetetlenül egyszerű. Csak cserélje ki ezt a sort:
<script>
Vagy egy kicsit hivatalosabban:
<script type="text/javascript">
Csak néhány másodpercig tart módosítani, és az Android Chrome azonnal végrehajtja.
Ne feledd, a módosítás utánGyorsítótár kényszerített frissítéseEllenkező esetben a böngésző továbbra is a régi fájlt olvashatja. A módszer is egyszerű:
- Számítógép: Ctrl + F5
- Telefon: Beállítások → Adatvédelem → Gyorsítótár törlése
Frissítés után a kód másodpercek alatt újraéled, és az oldal újra elkezd futni.
Ez valójában egy "felszámolás".
Végső soron a probléma ezúttal nem maga a JS problémája, hanemA front-end hagyományos kód korszaka.
A böngészőgyártóknak egyértelmű feladatuk van: fokozatosan megtisztítaniuk az elavult szintaxist, és kényszeríteniük a fejlesztőket a frissítésre.
Olyan ez, mint egy autópálya: a triciklik és a traktorok korábban egymás mellett közlekedhettek, de most biztonsági okokból ki kell őket hajtani. language="javascript" Annak a traktornak nem lett volna szabad a gyors sávban lennie.
Mire kell figyelniük a fejlesztőknek?
Ez az eset nagyon is valóságos emlékeztetőül szolgál számunkra:
A kódolási szabványok nagyon fontosak A kód, amiről azt hiszed, hogy "egyszerűen működik", egy bizonyos verzióban már nem fog működni.
A tesztkörnyezetnek lépést kell tartania a tempóval Ne csak a számítógépeden kattints és publikálj a Chrome-ban. Ellenőrizned kell mobileszközökön és a böngészők különböző verzióiban is.
Kövesse a böngésző frissítési naplóit Minden alkalommal, amikor a Chromium frissül, rengeteg „elavulási és eltávolítási” megjegyzés jelenik meg. Ezek nem díszek, de tényleg tönkreteszik az üzletedet.
Konklúzió: Egy sornyi kód mögött technológiai fejlődés áll
Sokan panaszkodnak, hogy a Google „etikátlan”, de magasabb perspektívából nézve ez valójában egy elkerülhetetlen folyamat, amely előre viszi az egész webes ökoszisztémát.
A régi tulajdonságok kiküszöbölése és a fejlesztők szabványok követésére kényszerítése a technológiai civilizáció iterációja.
Ha továbbra is kompatibilisek maradunk az elavult szintaxissal, a frontend előbb-utóbb egy omladozó kavalkáddá válik.
Ezért, amikor megjavítjuk ezt a kis gödröt, valójában a "technológiai civilizáció tisztítómozgalmában" veszünk részt.
A következő néhány évben egyre több hasonló buktató lesz, és az egyetlen ellenszer azTarts lépést a korral és kövesd a szabványokat.
Végső összefoglaló
- Számítógépeken futtatható, de Androidon nem, mert
<script language="javascript">Elavult. - -tól Króm 119 Az Android Chrome vezeti a kihagyásban
languageAttribútum<script>块. - A megoldás a következő: használd
<script>或<script type="text/javascript">. - A módosítás után frissítse a gyorsítótárat, és a probléma helyreáll.
- A fejlesztőknek mindig figyelniük kell a böngészőfrissítésekre, és szokásuknak kell lenniük a kód szabványosított módon történő írásában.
Tehát, amikor legközelebb egy furcsa hibával találkozol, ahol a számítógép jól működik, de a telefon nem, érdemes lehet ezen elgondolkodnod: Van-e egy „múlt századi ereklye” elrejtve a kódodban?
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) megosztotta a „Miért hibázik a JS kód az Android Chrome-ban? Feltárul a nem végrehajtás oka, és egy kattintással elérhető a megoldás!” című cikket, ami hasznos lehet számodra.
Üdvözöljük a cikk linkjének megosztásában:https://www.chenweiliang.com/cwl-33236.html
További rejtett trükkök🔑 felfedéséhez csatlakozz Telegram csatornánkhoz!
Oszd meg és lájkold, ha tetszik! Az Ön megosztásai és lájkjai továbbra is motiválnak minket!