რატომ ვერ მუშაობს JS კოდი Android Chrome-ზე? გამოაშკარავებულია: ერთი დაწკაპუნებით გადაწყვეტა!

გეგონათ, ვებსაიტი კარგი იყო და JS კოდიც სტაბილური, მაგრამ როგორც კი მობილური ბრაუზერის ვერსია შეცვალეთ, გვერდი „გაითიშა“?

ყველაზე საგანგაშო ის არის, რომ კომპიუტერი ჩვეულებრივად მუშაობს,安卓მაგრამ ტელეფონი სრულიად უგულებელყოფს შენს ყურადღებას.

ეს ხუმრობა არ არის, ეს ბრაუზერის პრობლემაა, რომელიც ჩუმად ხდება.

პრობლემის არსი: საქმე იმაში არ არის, რომ არასწორად დაწერე, არამედ იმაში, რომ დრომ მიგატოვა

რატომ ვერ მუშაობს JS კოდი Android Chrome-ზე? გამოაშკარავებულია: ერთი დაწკაპუნებით გადაწყვეტა!

სინამდვილეში, როდესაც დეველოპერების უმეტესობა ამ ფენომენს ხედავს, მათი პირველი რეაქციაა: არის თუ არა JS სინტაქსში შეცდომა? DOM არ არის ჩატვირთული? ან ნებართვა დაბლოკილია?

შედეგი? არცერთი. ნამდვილი დამნაშავე უძველესი წარწერა აღმოჩნდა:

<script language="javascript">

კოდის ეს ხაზი პოპულარული იყო 20 წლის წინშეუზღუდავი, რომლის ნახვაც ყველა სახელმძღვანელოშია შესაძლებელი.

მაგრამ Chromium-ის ვერსია 119ამის შემდეგ, Google-მა დაემშვიდობა ამ „ანტიკვარულ გრამატიკას“: სანამ ხედავთ language ატრიბუტებს, ბრაუზერი შერჩევით უგულებელყოფს მათ და არც კი შეიწუხებს თავს მათ ახსნას.

თავსებადობის მიზეზების გამო, დესკტოპზე Chrome ჯერ კიდევ „დროებით ზრუნავს ამაზე“; მაგრამ მობილურ Android-ზე Chrome „ავანგარდია“ და მაშინვე ჩართო ეს გაწმენდის სტრატეგია.

ასე გამოჩნდა:კომპიუტერი კარგად მუშაობს, მაგრამ მობილური ტელეფონი არ მუშაობსᲞრობლემა.

რატომ მიიღო Android-მა პირველი ზომები?

ზოგიერთმა შეიძლება იკითხოს: რატომ გამოვიდა Android Chrome პირველი?

ეს ძალიან მარტივია, რადგან მობილური ტერმინალის განახლების ტემპი უფრო სწრაფია და Google ინფორმაციას წითელი კონვერტების გაგზავნის სისწრაფით აგზავნის.

2023 10 年 月 日 31Chrome 119-ის Android ვერსია სრულად გამოვიდა Google Play-ზე.

მიუხედავად იმისა, რომ დესკტოპის ვერსიაც იყენებს Chromium-ის ბირთვს, ჩვეულებრივია „ხელის შეკავება“, რათა თავიდან აიცილოთ შიდა კორპორატიული სისტემების დიდი რაოდენობის უეცარი აფეთქება.

ასე რომ, თუ კვლავ იყენებთ ფრაზას "language=javascript„Android ტელეფონებზე ეს გამჭვირვალე კოდის დაწერის ეკვივალენტურია, რომელსაც ბრაუზერი პირდაპირ უგულებელყოფს.“

გამოსავალი: დაასრულეთ სამ წამში

საბედნიეროდ, ამ პრობლემის გამოსწორება წარმოუდგენლად მარტივია. უბრალოდ შეცვალეთ ეს ხაზი:

<script>

ან ცოტა უფრო ოფიციალურად:

<script type="text/javascript">

მის შეცვლას მხოლოდ რამდენიმე წამი სჭირდება და Android Chrome მას მაშინვე შეასრულებს.

გახსოვდეთ, ცვლილების შემდეგქეშის იძულებითი განახლებაწინააღმდეგ შემთხვევაში, ბრაუზერი შესაძლოა კვლავ კითხულობდეს ძველ ფაილს. მეთოდიც მარტივია:

  • კომპიუტერი: Ctrl + F5
  • ტელეფონი: პარამეტრები → კონფიდენციალურობა → ქეშის გასუფთავება

განახლების შემდეგ, კოდი წამებში განახლდება და გვერდი ხელახლა დაიწყებს მუშაობას.

ეს სინამდვილეში „ლიკვიდაციაა“

საბოლოო ჯამში, პრობლემა ამჯერად არა თავად JS-ის პრობლემაა, არამედფრონტ-ენდის მემკვიდრეობითი კოდის ეპოქა.

ბრაუზერის მწარმოებლებმა ძალიან ნათელი უნდა გააკეთონ: თანდათანობით გაასუფთაონ მოძველებული სინტაქსი და აიძულონ დეველოპერები განაახლონ ისინი.

ეს მაგისტრალს ჰგავს: ადრე სამთვლიანი ველოსიპედები და ტრაქტორები გვერდიგვერდ მოძრაობდნენ, მაგრამ ახლა უსაფრთხოების მიზნით, მათი გაყვანაა საჭირო. language="javascript" ის ტრაქტორი სწრაფი მოძრაობით არ უნდა მოძრაობდეს.

რას უნდა მიაქციონ ყურადღება დეველოპერებმა?

ეს ინციდენტი ჩვენთვის ძალიან რეალისტურ შეხსენებად გვემსახურება:

  1. კოდირების სტანდარტები მართლაც მნიშვნელოვანია კოდი, რომელიც თქვენი აზრით, „უბრალოდ მუშაობს“, შესაძლოა გარკვეულ ვერსიაში აღარ იმუშაოს.

  2. ტესტირების გარემო ტემპს უნდა აჰყვეს ნუ დააწკაპუნებთ და გამოაქვეყნებთ Chrome-ში თქვენს კომპიუტერში. თქვენ უნდა შეამოწმოთ ეს თქვენს მობილურ ტელეფონზე და ბრაუზერების სხვადასხვა ვერსიაზე.

  3. თვალყური ადევნეთ ბრაუზერის განახლების ჟურნალებს Chromium-ის ყოველ განახლებაზე უამრავი „მოძველებული და წაშლილი ფუნქცია“ ჩნდება. ეს დეკორაციები არ არის, მაგრამ თქვენს ბიზნესს ნამდვილად გაანადგურებს.

დასკვნა: კოდის ერთი ხაზის უკან ტექნოლოგიური ევოლუცია იმალება

ბევრი ადამიანი ჩივის, რომ Google „არაეთიკურია“, მაგრამ უფრო მაღალი პერსპექტივიდან გამომდინარე, ეს სინამდვილეში გარდაუვალი პროცესია, რომელიც მთელ ვებ-ეკოსისტემას წინ წაწევს.

ძველი ატრიბუტების აღმოფხვრა და დეველოპერებისთვის სტანდარტების დაცვის იძულება ტექნოლოგიური ცივილიზაციის იტერაციაა.

თუ ჩვენ გავაგრძელებთ ყველა მოძველებულ სინტაქსთან თავსებადობას, წინა ნაწილი ადრე თუ გვიან დანგრეული ნაზავის ქოთნად გადაიქცევა.

ამიტომ, როდესაც ამ პატარა ორმოს ვასწორებთ, ჩვენ რეალურად ვმონაწილეობთ „ტექნოლოგიური ცივილიზაციის გამწმენდ მოძრაობაში“.

მომდევნო რამდენიმე წლის განმავლობაში, მსგავსი ხაფანგები სულ უფრო და უფრო მეტი იქნება და ერთადერთი ანტიდოტიააჰყევით დროს და დაიცავით სტანდარტები.

საბოლოო რეზიუმე

  • კომპიუტერებს შეუძლიათ მისი გაშვება, მაგრამ Android-ს არა, რადგან <script language="javascript"> მოძველებულია.
  • მდებარეობა Chromium 119 Android Chrome ლიდერობს გამოტოვებაში language ატრიბუტი <script> 块。
  • გამოსავალია: გამოიყენეთ <script><script type="text/javascript">.
  • ცვლილებების შეტანის შემდეგ, განაახლეთ ქეში და პრობლემა აღდგება.
  • დეველოპერებმა ყოველთვის ყურადღება უნდა მიაქციონ ბრაუზერის განახლებებს და გამოიმუშაონ კოდის სტანდარტიზებული ფორმით წერის ჩვევა.

ასე რომ, შემდეგ ჯერზე, როდესაც უცნაურ შეცდომას წააწყდებით, რომლის დროსაც კომპიუტერი გამართულად მუშაობს, მაგრამ ტელეფონი არა, უმჯობესია ამაზე დაფიქრდეთ: ხომ არ არის თქვენს კოდში დამალული „გასული საუკუნის რელიქვია“?

იმედი ჩენ ვეილიანგის ბლოგი ( https://www.chenweiliang.com/ ) გააზიარა „რატომ ვერ ხერხდება JS კოდი Android Chrome-ში? გამოვლინდა შეუსრულებლობის მიზეზი და ერთი დაწკაპუნებით გამოსავალი!“, რაც შეიძლება თქვენთვის სასარგებლო იყოს.

კეთილი იყოს თქვენი მობრძანება ამ სტატიის ბმულის გასაზიარებლად:https://www.chenweiliang.com/cwl-33236.html

მეტი ფარული ხრიკის გასახსნელად🔑, კეთილი იყოს თქვენი მობრძანება ჩვენს Telegram არხზე!

გააზიარეთ და მოიწონეთ თუ მოგეწონათ! თქვენი გაზიარებები და მოწონებები ჩვენი მუდმივი მოტივაციაა!

 

评论

თქვენი ელფოსტის მისამართი არ გამოქვეყნდება. გამოყენებულია აუცილებელი ველები * ლეიბლი

გადაახვიეთ ზემოთ