Kodėl JS kodas neveikia „Android Chrome“ naršyklėje? Atskleista: sprendimas vienu spustelėjimu!

Manėte, kad svetainė gera, o JS kodas stabilus kaip senas šuo, bet vos pakeitus mobiliosios naršyklės versiją, puslapis „pradėjo streikuoti“?

Labiausiai bauginanti yra tai, kad kompiuteris veikia normaliai,安卓Bet telefonas tave visiškai ignoruoja.

Tai ne pokštas, tai tyliai užsimezgusi naršyklės problema.

Problemos šaknis: ne ta, kad parašėte neteisingai, o ta, kad laikai jus apleido.

Kodėl JS kodas neveikia „Android Chrome“ naršyklėje? Atskleista: sprendimas vienu spustelėjimu!

Tiesą sakant, dauguma kūrėjų, pamatę šį reiškinį, pirmiausia pagalvoja: ar JS sintaksėje yra klaida? Ar DOM neįkeltas? O gal leidimai užblokuoti?

Rezultatas? Nė vienas. Tikrasis kaltininkas pasirodė esąs tas senovinis raštas:

<script language="javascript">

Ši kodo eilutė buvo populiari prieš 20 metųneribotas, kurį galima pamatyti visuose vadovėliuose.

Bet „Chromium“ 119 versijaPo to „Google“ atsisveikino su šia „antikvarine gramatika“: tol, kol matai language Atributus naršyklė selektyviai juos ignoruos ir net nesivargins jų paaiškinti.

Dėl suderinamumo priežasčių „Chrome“ darbalaukyje vis dar „laikinai tuo pasirūpina“; tačiau „Chrome“ mobiliojoje „Android“ versijoje yra „avangarde“ ir iš karto įjungė šią valymo strategiją.

Taigi pasirodė:Kompiuteris veikia gerai, bet mobilusis telefonas neveikiaProblema.

Kodėl „Android“ pirmiausia ėmėsi veiksmų?

Kai kurie žmonės gali paklausti: kodėl pirmiausia paleista „Android Chrome“?

Tai labai paprasta, nes mobiliojo terminalo atnaujinimo tempas yra greitesnis, o „Google“ informaciją siunčia taip greitai, kaip siunčia raudonus vokus.

2023 10 年 月 日 31„Chrome 119“ „Android“ versija buvo visiškai išplatinta per „Google Play“.

Nors darbalaukio versija taip pat naudoja „Chromium“ branduolį, įprasta „laikyti ranką“, kad būtų išvengta staigaus daugybės vidinių įmonės sistemų sprogimo.

Taigi, jei vis dar vartojate frazę „language=javascript„Android“ telefonuose tai prilygsta skaidraus kodo rašymui, kurį naršyklė tiesiogiai ignoruoja.

Sprendimas: Atlikite tai per tris sekundes

Laimei, šios problemos sprendimas yra neįtikėtinai paprastas. Tiesiog pakeiskite šią eilutę:

<script>

Arba šiek tiek formaliau:

<script type="text/javascript">

Jį modifikuoti užtrunka tik kelias sekundes, o „Android Chrome“ jį nedelsdama vykdys.

Atminkite, kad po modifikacijosPriverstinai atnaujinti talpykląPriešingu atveju naršyklė vis dar gali skaityti seną failą. Metodas taip pat paprastas:

  • Kompiuteris: Ctrl + F5
  • Telefonas: Nustatymai → Privatumas → Išvalyti talpyklą

Atnaujinus kodą, jis atgaivinamas per kelias sekundes ir puslapis vėl pradeda veikti.

Tai iš tikrųjų yra „likvidavimas“.

Galiausiai šį kartą problema yra ne pati JS, oPriekinio-galinio palikimo kodo era.

Naršyklių gamintojai turi padaryti labai aiškų darbą: palaipsniui išvalyti pasenusią sintaksę ir priversti kūrėjus atnaujinti.

Tai tarsi greitkelis: anksčiau triračiams ir traktoriams buvo leidžiama važiuoti greta, bet dabar dėl saugumo sumetimų juos reikia išvaryti. language="javascript" Tas traktorius neturėjo būti greitojoje juostoje.

Į ką turėtų atkreipti dėmesį kūrėjai?

Šis įvykis mums yra labai realus priminimas:

  1. Kodavimo standartai yra labai svarbūs Kodas, kuris, jūsų manymu, „tiesiog veikia“, tam tikroje versijoje gali nustoti veikti.

  2. Testavimo aplinka turi neatsilikti nuo tempo Nespustelėkite ir publikuokite „Chrome“ naršyklėje kompiuteryje. Tai turite patikrinti mobiliuosiuose įrenginiuose ir skirtingose ​​naršyklių versijose.

  3. Stebėti naršyklės atnaujinimų žurnalus Kiekvieną kartą atnaujinus „Chromium“, atsiranda daug „nepanaudojimo ir pašalinimo“ pranešimų. Tai ne puošmena, o tiesiog sugadins jūsų verslą.

Išvada: už kodo eilutės slypi technologinė evoliucija

Daugelis žmonių skundžiasi, kad „Google“ yra „neetiška“, tačiau iš aukštesnio požiūrio tai iš tikrųjų yra neišvengiamas procesas, kuris skatina visą interneto ekosistemą.

Senų atributų pašalinimas ir kūrėjų vertimas laikytis standartų yra technologinės civilizacijos iteracija.

Jei ir toliau būsime suderinami su visa pasenusia sintakse, priekinė dalis anksčiau ar vėliau taps apgriuvusiu kratiniu.

Todėl, taisydami šią mažą duobę, iš tikrųjų dalyvaujame „technologinės civilizacijos valymo judėjime“.

Per ateinančius kelerius metus panašių spąstų bus vis daugiau, o vienintelis priešnuodis yraNepraleiskite laiko ir laikykitės standartų.

Galutinė santrauka

  • Kompiuteriai gali jį paleisti, bet „Android“ negali, nes <script language="javascript"> Nebenaudojamas.
  • Chromas 119 „Android Chrome“ pirmauja praleidžiant language Atributas <script> gabalas.
  • Sprendimas yra: naudoti <script> Arba <script type="text/javascript">.
  • Po modifikavimo atnaujinkite talpyklą ir problema bus atkurta.
  • Kūrėjai visada turėtų atkreipti dėmesį į naršyklės atnaujinimus ir išsiugdyti įprotį rašyti kodą standartizuotu būdu.

Taigi, kitą kartą susidurdami su keista klaida, kai kompiuteris veikia gerai, bet telefonas neveikia, galite pagalvoti apie tai: ar jūsų kode yra paslėptas „praėjusio amžiaus reliktas“?

发表 评论

Jūsų el. pašto adresas nebus skelbiamas. Naudojami privalomi laukai * Etiketė

Pereikite į viršų