Sobes.tech
Junior

Код жазууларын көбінесе body тегинин соңунда байланыштырат?

sobes.tech AI

AIден жооп

Барабар сайттын рендерлөө тоскоолдуулбашы жана DOM элементтерине алардын жүктөлгөндөн кийин дароо жетүү үчүн.

<head> же <body> башында async же defer атрибуттары жок скрипттер кошулганда, браузер HTML анализин жана баракчаны рендерлөөнү токтотот, скрипт жүктөлүп жана аткарылгандан кийин гана. Бул сайттын көрүнүктүү иштешин жайлатат.

<body> аяктап кошуу, DOM дарагы толугу менен түзүлгөнүн кепилдейт, скрипт аткарылганда, түздөн-түз элементтер менен иштөө мүмкүнчүлүгүн берет, гана DOMContentLoaded же load окуяларын колдонбостон.

async жана defer атрибуттары заманбап альтернатива болуп саналат, HTML анализин тоскоолдуксуз жүктөө үчүн көбүрөөк ийкемдүү варианттарды сунуштайт:

  • async: Скрипт асинхрон жүктөлөт жана жүктөлгөндөн кийин дароо аткарылат, DOM толук жүктөлбөй туруп. Асинхрон скрипттердин аткаруу тартиби кепилденбейт.
  • defer: Скрипт асинхрон жүктөлөт жана HTML толук анализделгенден кийин, DOMContentLoaded окуясына чейин аткарылат. defer менен жүктөлгөн скрипттер, алардын документтеги пайда болуу тартибинде аткарылат.