Sobes.tech
Junior

Nima uchun skriptlar odatda body tegining oxirida ulanishi mumkin?

sobes.tech AI

AIdan javob

Sahifa renderingini to'xtatmaslik va DOM elementlariga ularning yuklanishidan darhol kirish imkonini berish uchun.

<head> yoki <body> boshida async yoki defer atributlari bo'lmagan skriptlarni ulash, brauzer HTMLni tahlil qilish va sahifa renderingini to'xtatadi, skript yuklanib, bajarilguncha. Bu saytning ko'rinadigan ishlashini sekinlashtiradi.

<body> oxirida ulash, DOM daraxti to'liq shakllanganligini kafolatlaydi va skript bajarilayotgan paytda elementlar bilan to'g'ridan-to'g'ri ishlash imkonini beradi, faqat DOMContentLoaded yoki load kabi voqealarni ishlatmasdan.

async va defer atributlari, HTML tahlil qilishni to'xtatmasdan skriptlarni yuklash uchun zamonaviy va ko'proq moslashuvchan variantlarni taklif qiladi:

  • async: Skript asinxron tarzda yuklanadi va yuklanganidan keyin darhol bajariladi, DOM to'liq yuklanishini kutmaydi. Asinxron skriptlarning bajarilish tartibi kafolatlanmaydi.
  • defer: Skript asinxron tarzda yuklanadi va HTML to'liq tahlil qilinganidan so'ng, DOMContentLoaded voqeasidan oldin bajariladi. defer bilan yuklangan skriptlar, ularning sahifada paydo bo'lish tartibida bajariladi.