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,DOMContentLoadedvoqeasidan oldin bajariladi.deferbilan yuklangan skriptlar, ularning sahifada paydo bo'lish tartibida bajariladi.