GH GambleHub

بارگیری تنبل و شتاب UX

1) اهداف و اصول

بارگیری تنبل یک استراتژی برای نشان دادن بلافاصله مهم و بقیه در صورت لزوم است. اهداف:
  • کاهش TTI/LCP در هزینه مسیر بحرانی.
  • تثبیت طرح (CLS کم) با ابعاد قابل پیش بینی.
  • صرفه جویی در باتری و ترافیک به تلفن همراه.
  • Raise Conversion - کاربر عمل را زودتر می بیند.

اصول: اولویت → پیشرفت → قابل پیش بینی بودن اول، محتوای انتقادی، سپس محتوای مترقی و بهبود پس از بار.

2) مسیر رندر بحرانی

HTML بحرانی: بلافاصله نشانه گذاری «above-the-fold» را انجام دهید.
CSS انتقادی: درون خطی ≤ 10-15 کیلوبایت ؛ بقیه 'media = «print»' + swap/reload است.
JS به عنوان مسدود کننده: 'defer '/' async'، پارتیشن بندی تکه، منطق بار در امتداد مسیرها.
فونت ها: 'font-display: مبادله' اختیاری '، WOFF2 پیش بارگذاری، سیستم برگشت' و.

3) اولویت بندی منابع شبکه

Preconnect به CDN/فونت/تصاویر (TCP + TLS در پیش).

DNS prefetch برای دامنه های سوم

پیش بارگذاری تصاویر/قلمها/دستنوشتههای بحرانی.
نکات اولویت ("اهمیت =" بالا "پایین"، "fetchpriority =" بالا "برای تصویر قهرمان).
HTTP/3/QUIC: تاخیر کمتر ؛ CDN به کاربر نزدیکتر است.

سیاست های حافظه پنهان: «غیر قابل تغییر» برای دارایی های نسخه ؛ ETag صحیح/آخرین اصلاح شده

4) پیشرفته رندر و دانلود ایالات

اسکلت/شیمرها به جای اسپینر: پیشرفت بصری بدون «پریدن»

متغیرهایی با اندازه ثابت (کارت ها، ریز عکسها) - صفر CLS.
Streaming/Chunked HTML: به سرعت فریم را از بین ببرید، سپس محتوا را اضافه کنید.
رابط کاربری خوش بینانه (احتیاط): اقدام فوری به دنبال اعتبار.

5) محتوای رسانه ای بارگیری تنبل

تصاویر: «بارگیری =» تنبل «،» رمزگشایی = «async»، فرمت های AVIF/WebP (JPEG/PNG fallback).
پاسخگو: «srcset »/« اندازه» تحت DPR/عرض های مختلف ؛ 3 × را بارگیری نکنید که 1 × کافی باشد.
ارتفاع قابل پیش بینی: «عرض/ارتفاع» یا «نسبت ابعاد» CSS.
ویدئو: 'preload =' metadata '، پوسترهای پس از بارگذاری، مکث خودکار در خارج از نمای دید.
آیکون ها: SVG sprite/inline ؛ از درخواست های HTTP غیر ضروری اجتناب کنید.

6) قطعات و مسیرهای تنبل

تقسیم کد: واردات پویا توسط مسیرها/ویدجت ها.
اجزای جزیره/هیدراتاسیون جزئی: فقط مناطق تعاملی را تحریک کنید.
SSR/SSG + ISR: HTML را روی سرور رندر کنید، به صورت تدریجی تازه کنید.
Suspense/Defer (در چارچوب مورد استفاده): تجزیه داده ها و UI.

7) لیست ها و جداول بزرگ

windowing-رندر تنها منطقه قابل مشاهده + بافر.
بارگذاری مجدد لنگر: هنگام بارگیری مجدد بسته ها موقعیت را حفظ کنید.
به روز رسانی دسته ای: هنگام پیمایش، ترسیم مجدد را به حداقل برسانید.
ارتفاع ردیف ثابت یا «contain-intrinsic-size» برای اندازه های قابل پیش بینی.

8) CSS و شتاب دهنده مرورگر

'content-visibility: auto': مرورگر نامرئی (حداقل محاسبات) را حذف می کند.
'contain '/' will-change': محدود کردن تأثیر سبک ها/طرح.
انیمیشن ها: فقط تبدیل/کدورت ؛ اجتناب از طرح/اثرات رنگ سنگین.
سایه و تار - کم، به خصوص در لیست.

9) مدیریت بار رویداد و JS

شنوندگان پیمایش منفعل/تاچا ('{منفعل: درست}').
debounce/دریچه گاز به تغییر اندازه/اسکرول/گرداننده.
مقدار دهی اولیه معوق ویدجت نمای خارج (تقاطع ناظر).

انتقال محاسبات سنگین به Web Workers

10) زمینه تلفن همراه

شبکه: آهسته 3G/high RTT - دانلود تنبل تهاجمی تر است.
باتری و گرما: محدود کردن فرکانس تایمر، کاهش FPS انیمیشن های پس زمینه.
فشرده سازی: Brotli برای متن، درست «پذیرش رمزگذاری».
پیش فرض بیش از Wi-Fi فقط برای انتقال احتمالی (تاریخ کلیک).

11) در دسترس بودن و SEO

محتوای ≠ اسکلت: با خوانندگان صفحه نمایش دخالت نمی کند ؛ نظم منطقی تمرکز

HTML سرور متن کلیدی - همه چیز را در پشت JS پنهان نکنید.
متن های Alt و هدر ها تا زمان بارگیری مجدد در دسترس هستند.
محتوای تنبل نباید مسیرها را از صفحه کلید مسدود کند.

12) معیارها و اهداف

LCP (قهرمان تصویر/هدر): ≤ 2. 5 ثانیه (موبایل)

INP (پاسخ ورودی): ≤ 200 میلی ثانیه.

CLS: ≤ 0,1

TTFB: ≤ 500 میلی ثانیه ؛ TTI: ≤ 3 ها.

بایت بیش از سیم (نمایش اول): بودجه سخت (به عنوان مثال، ≤ 200-300 کیلوبایت کرت. منابع)

Scroll-jank: <1% فریم> 16. 7 خانم

تله متری رویداد:
  • 'lazy _ enqueued '/' lazy _ loaded' (شناسه، نوع، اندازه، تأخیر)،
  • 'component _ hydrated' (زمان، وزن JS)،
  • 'تغییر اندازه پنجره _ تغییر اندازه'،
  • 'lcp _ candidate _ shown', 'skeleton _ time _ visible',
  • errors ('img _ error', 'decode _ timeout').

13) الگوهای مناطق معمولی

خانه/دایرکتوری: SSR + کارت اسکلت، تصاویر تنبل، فیلترهای مترقی.
کارت محصول/بازی: پیش بارگذاری تصویر قهرمان + اولویت بالا ؛ گالری - تنبل ؛ بررسی ها - با کلیک.
مقالات طولانی/ویکی: TOC، پیشرفت خواندن، تنبل برای بلوک های رسانه ای/کد، جداول تاخیر مطالب.
نوارهای زنده: مجازی سازی خط، مکث خودکار اسکرول، حد بافر.

14) ضد گلوله

اسپینر تمام صفحه> 1-2 ثانیه بدون پیشرفت.
تنبل بدون دارندگان محلی → جهش طرح (CLS ↑).
دانلود «همه JS در یک بار» برای حالات نادر.
درون خطی فونت های سنگین/تصاویر را به بخش بحرانی.
اندازه کارت های غیر قابل پیش بینی → محتوای رومینگ.
بارگذاری انتقادی تنبل (آرم، متن قهرمان) - LCP را می شکند.
هیچ موقعیتی پس از «بازگشت» وجود ندارد.

15) چک لیست پیاده سازی (گام به گام)

Sprint 1 - تشخیص: اندازه گیری LCP/INP/CLS/TTFB ؛ نقشه منابع و مسیر بحرانی.
Sprint 2 - انتقاد/اولویت: بحرانی CSS/HTML، «preconnect »/« preload»، کاهش تکه های JS.
Sprint 3 - رسانه ها: AVIF/WebP، «srcset/اندازه»، ابعاد ثابت، تنبل برای غیر قهرمان.
Sprint 4 - لیست ها: مجازی سازی، بارگذاری مجدد لنگر، اسکلت/روشن و خاموش شدن.
Sprint 5 - معماری: هیدراتاسیون جزئی/جزایر، SSR/SSG/ISR، جریان.
Sprint 6 - تنظیم دقیق: «محتوا قابل مشاهده»، نکات اولویت، debounce، کارکنان وب.
Sprint 7 - A/B و تله متری: مقایسه گزینه های اسکلت، سطح تنبل، بودجه.
Sprint 8 - بهداشت انتشار: نسخه های دارایی، بازپرداخت نقدی، استراتژی های بازپرداخت.

16) واژه نامه (کوتاه)

بارگذاری تنبل - بارگذاری تاخیری محتوای نامرئی.
LCP/INP/CLS/TTFB/TTI/TBT معیارهای اصلی نرخ UX هستند.
Code-splitting/Hydration/Islands - تکنیک های خرد کردن و احیای UI.
مجازی سازی - رندر یک جعبه لیست قابل مشاهده است.
نکات اولویت/Preconnect/Preload - دستورالعمل هایی برای مرورگر در مورد آنچه که قبلا بارگیری شده است.
محتوا دید - پرش محاسبات برای محتوای نامرئی.

17) خط پایین

بارگذاری تنبل «بارگذاری» = «تنبل» نیست و انجام می شود. "این سیستم است: مسیر بحرانی، فرمت های رسانه ای مناسب، تعامل جزیره، مجازی سازی و تله متری. لحظه مهم، ثانویه ظریف و ارزان، و طرح قابل پیش بینی است. سپس محصول در هر دستگاه و در هر شبکه ای سریع احساس می شود.

Contact

با ما در تماس باشید

برای هرگونه سؤال یا نیاز به پشتیبانی با ما ارتباط بگیرید.ما همیشه آماده کمک هستیم!

Telegram
@Gamble_GC
شروع یکپارچه‌سازی

ایمیل — اجباری است. تلگرام یا واتساپ — اختیاری.

نام شما اختیاری
ایمیل اختیاری
موضوع اختیاری
پیام اختیاری
Telegram اختیاری
@
اگر تلگرام را وارد کنید — علاوه بر ایمیل، در تلگرام هم پاسخ می‌دهیم.
WhatsApp اختیاری
فرمت: کد کشور و شماره (برای مثال، +98XXXXXXXXXX).

با فشردن این دکمه، با پردازش داده‌های خود موافقت می‌کنید.