تشير واجهة برمجة التطبيقات Fetch Priority API إلى الأولوية النسبية للموارد بالنسبة إلى المتصفّح. وبإمكانه تفعيل التحميل الأمثل وتحسين "مؤشرات أداء الويب الأساسية".
عندما يحلّل المتصفّح صفحة ويب ويبدأ في اكتشاف الموارد وتنزيلها، مثل الصور أو النصوص البرمجية أو صفحات الأنماط المتتالية (CSS)، يحدّد لها priority
عملية جلب حتى يتمكّن من تنزيلها بالترتيب الأمثل. تعتمد أولوية المورد عادةً على ما هو عليه ومكانه في المستند. على سبيل المثال، قد تحظى الصور ضمن إطار العرض بالأولوية High
، وقد تكون أولوية خدمة CSS التي يتم تحميلها قبل إطلاقها والتي تحظر العرض باستخدام <link>
في <head>
هي Very High
. المتصفحات جيدة جدًا في تعيين الأولويات التي تعمل بشكل جيد ولكنها قد لا تكون مثالية في جميع الحالات.
تناقش هذه الصفحة واجهة برمجة التطبيقات Fetch Priority API وسمة HTML fetchpriority
التي تتيح لك تعديل معلومات الأولوية النسبية لأحد الموارد (high
أو low
). يمكن أن تساعدك ميزة "أولوية الجلب" على تحسين "مؤشرات أداء الويب الأساسية".
ملخّص
في ما يلي بعض النواحي الرئيسية التي يمكن أن تساعدك فيها ميزة "أولوية الجلب":
- تحسين أولوية صورة LCP من خلال تحديد
fetchpriority="high"
في عنصر الصورة، ما يؤدي إلى حدوث سرعة LCP في وقت أقرب - زيادة أولوية نصوص
async
البرمجية باستخدام دلالات أفضل من الاختراق الأكثر شيوعًا حاليًا (إدراج<link rel="preload">
للنص البرمجيasync
) - تقليل أولوية النصوص البرمجية ذات النص المتأخر للسماح بتسلسل أفضل مع الصور.
في السابق، كان للمطوّرين تأثير محدود على أولوية الموارد باستخدام التحميل المسبق والاتصال المسبق. تتيح لك ميزة "التحميل المسبق" إعلام المتصفّح بالموارد المهمة التي تريد تحميلها في وقت مبكر قبل أن يكتشفها المتصفّح بشكل طبيعي. يعد ذلك مفيدًا بشكل خاص للموارد التي يصعب اكتشافها، مثل الخطوط المضمّنة في أوراق الأنماط أو صور الخلفية أو الموارد التي تم تحميلها من برنامج نصي. يساعد الاتصال المسبق في إعداد الاتصالات بالخوادم المشتركة المصدر ويمكن أن يساعد في تحسين المقاييس، مثل الوقت المستغرق حتى البايت الأول. وهذه الميزة مفيدة عندما تعرف مصدرًا، وليس بالضرورة عنوان URL الدقيق لمورد مطلوب.
تكمل أولوية الجلب هذه تلميحات الموارد هذه. إنّها إشارة تستند إلى الترميز وتتوفّر من خلال السمة fetchpriority
ويمكن للمطوّرين استخدامها للإشارة إلى الأولوية النسبية لمورد معيّن. يمكنك أيضًا استخدام هذه التلميحات من خلال JavaScript وواجهة برمجة تطبيقات الجلب من خلال السمة priority
للتأثير في أولوية عمليات جلب الموارد المخصّصة للبيانات. يمكن أيضًا لأولوية الجلب أن تكمل عملية التحميل المُسبق. التقِط صورة "سرعة عرض أكبر محتوى مرئي" التي ستظل تحظى بأولوية منخفضة عند تحميلها مسبقًا. وإذا رفضت مصادر أخرى ذات أولوية منخفضة، يمكن أن يساعد استخدام أولوية الجلب في زيادة سرعة تحميل الصورة.
أولوية المورد
يعتمد تسلسل تنزيل الموارد على الأولوية المعينة للمتصفح كل مورد على الصفحة. العوامل التي يمكن أن تؤثر في حساب الأولوية ما يلي:
- نوع المورد، مثل CSS والخطوط والنصوص البرمجية والصور والموارد من الجهات الخارجية.
- يشير الموقع الجغرافي أو ترتيب المستند إلى الموارد.
- تحدّد هذه السمة ما إذا كنت تريد استخدام السمتَين
async
أوdefer
في النصوص البرمجية.
يوضّح الجدول التالي كيفية تحديد Chrome حسب الأولوية وتسلسل معظم الموارد:
التحميل في مرحلة حظر التنسيق | تحميل مرة واحدة في مرحلة حظر التنسيق | ||||
---|---|---|---|---|---|
أولوية الوميض |
VeryHigh | مرتفعة | الوسيط | منخفضة | VeryLow |
DevTools Priority |
الأعلى | مرتفعة | الوسيط | منخفضة | الأدنى |
المرجع الرئيسي | |||||
CSS (مبكر**) | CSS (وقت متأخر**) | CSS (عدم تطابق الوسائط***) | |||
النص البرمجي (مبكر** أو ليس من الماسح الضوئي للتحميل المسبق) | النص البرمجي (وقت متأخر**) | نص برمجي (غير متزامن) | |||
الخط | الخط (rel=preload) | ||||
استيراد | |||||
الصورة (في إطار العرض) | صورة (أول 5 صور > 10,000 بكسل 2) | صورة | |||
الوسائط (فيديو/صوت) | |||||
الجلب المُسبَق | |||||
XSL | |||||
XHR (المزامنة) | XHR/fetch* (غير متزامن) |
يُنزِّل المتصفّح الموارد بنفس الأولوية المحسوبة بالترتيب الذي يتم اكتشافها به. يمكنك التحقّق من الأولوية المعيّنة لموارد مختلفة عند تحميل إحدى الصفحات ضمن علامة التبويب الشبكة ضمن "أدوات مطوري البرامج في Chrome". (تأكَّد من تضمين عمود الأولوية من خلال النقر بزر الماوس الأيمن على عناوين الجدول ووضع علامة في المربّع).
عندما تتغيّر الأولويات، يمكنك رؤية كلّ من الأولوية الأولية والنهائية في إعداد صفوف الطلبات الكبيرة أو في تلميح.
متى قد تحتاج إلى أولوية الجلب؟
الآن بعد أن فهمت منطق تحديد الأولويات في المتصفح، يمكنك إجراء تعديلات على ترتيب تنزيل الصفحة لتحسين أدائها ومؤشرات أداء الويب الأساسية. وإليك بعض الأمثلة على الأشياء التي يمكنك تغييرها للتأثير في أولوية تنزيلات الموارد:
- ضَع علامات الموارد، مثل
<script>
و<link>
، بالترتيب الذي تريد أن ينزّلها المتصفّح. يتم بشكل عام تحميل الموارد ذات الأولوية نفسها بالترتيب الذي يتم اكتشافها به. - استخدِم تلميح المورد
preload
لتنزيل الموارد الضرورية في وقت مبكر، لا سيما للموارد التي لا يسهل على المتصفّح اكتشافها مبكرًا. - يمكنك استخدام
async
أوdefer
لتنزيل النصوص البرمجية بدون حظر الموارد الأخرى. - التحميل الكسول لمحتوى الجزء السفلي غير المرئي من الصفحة ليتمكّن المتصفّح من استخدام معدّل نقل البيانات المتاح للحصول على موارد الجزء المرئي من الصفحة الأكثر أهمية
تساعد هذه الأساليب في التحكّم في احتساب أولوية المتصفّح، ما يؤدي إلى تحسين الأداء ومؤشرات أداء الويب الأساسية. على سبيل المثال، عند تحميل صورة خلفية مهمة بشكل مسبق، يمكن اكتشافها في وقت أبكر من ذلك، ما يؤدي إلى تحسين سرعة عرض أكبر محتوى مرئي (LCP).
وفي بعض الأحيان، قد لا تكون هذه الأسماء المعرِّفة كافية لتحديد أولوية الموارد على النحو الأمثل لتطبيقك. في ما يلي بعض السيناريوهات التي تكون فيها أولوية الجلب مفيدة:
- لديك العديد من الصور في الجزء المرئي من الصفحة، ولكن ليس لجميعها الأولوية نفسها. على سبيل المثال، في العرض الدوار للصور، تحتاج أول صورة مرئية فقط إلى أولوية أعلى، ويمكن ضبط الصور الأخرى، التي عادةً ما تكون خارج الشاشة في البداية، لتكون ذات أولوية أقل.
- تبدأ الصور داخل إطار العرض عادةً عند أولوية
Low
. بعد اكتمال التنسيق، يكتشف Chrome أنها في إطار العرض ويعزز أولويتها. يضيف هذا عادةً تأخيرًا كبيرًا إلى تحميل الصور المهمة، مثل صور الجزء الرئيسي. يؤدي توفير "أولوية الجلب" في الترميز إلى السماح ببدء الصورة عند أولويةHigh
وبدء التحميل مبكرًا بكثير. وفي محاولة لأتمتة هذا الأمر إلى حد ما، تم ضبط أول خمس صور أكبر حجمًا على أولويةMedium
من قِبل Chrome، ما يساعد في حل هذه المشكلة، إلا أنّ صورةfetchpriority="high"
الواضحة ستكون أفضل.
لا يزال من الضروري استخدام ميزة "التحميل المُسبق" لرصد صور LCP المُضمَّنة كخلفيات CSS قبل إطلاقها. لتحسين صور الخلفية الأولوية، يمكنك تضمينfetchpriority='high'
في عملية التحميل المُسبق. - إنّ تعريف النصوص البرمجية كـ
async
أوdefer
يطلب من المتصفّح تحميلها بشكل غير متزامن. ومع ذلك، وكما هو موضح في جدول الأولوية، يتم أيضًا تعيين قيمة "منخفضة" لهذه النصوص البرمجية. الأولوية. وقد ترغب في زيادة أولويتها مع ضمان التنزيل غير المتزامن، خاصةً للنصوص البرمجية المهمة لتجربة المستخدم. - في حال استخدام واجهة برمجة تطبيقات JavaScript
fetch()
لجلب الموارد أو البيانات بشكل غير متزامن، يحدِّدها المتصفّح أولويةHigh
. قد تحتاج إلى تنفيذ بعض عمليات الجلب بأولوية أقل، خاصةً في حال مزج طلبات البيانات من واجهة برمجة التطبيقات في الخلفية مع طلبات البيانات من واجهة برمجة التطبيقات التي تستجيب لإدخال المستخدم. ضَع علامة على طلبات البيانات من واجهة برمجة التطبيقات التي تعمل في الخلفية على أنّها ذات أولويةLow
وعلى طلبات البيانات من واجهة برمجة التطبيقات التفاعلية كأولويةHigh
. - يعيّن المتصفّح لغة CSS والخطوط على أولوية
High
، ولكن قد تكون بعض هذه الموارد أكثر أهمية من غيرها. يمكنك استخدام "أولوية الجلب" لتقليل أولوية الموارد غير المهمة (تجدر الإشارة إلى أن CSS المبكر هو حظر العرض، لذا يجب أن تكون الأولويةHigh
عادةً).
السمة fetchpriority
استخدِم سمة HTML fetchpriority
لتحديد أولوية تنزيل أنواع الموارد، مثل CSS والخطوط والنصوص البرمجية والصور عند تنزيلها باستخدام العلامات link
أو img
أو script
. يمكن أن تستخدم القيم التالية:
high
: يحظى المورد بأولوية أعلى، وتريد أن يمنحه المتصفّح الأولوية أعلى من المعتاد ما دامت إشارات المتصفح الخاصة لا تمنع حدوث ذلك.low
: يحظى المورد بأولوية أقل، وتريد من المتصفِّح عدم منحه الأولوية، مرة أخرى إذا سمحت له مؤشراته بذلك.auto
: القيمة التلقائية التي تتيح للمتصفّح اختيار الأولوية المناسبة
في ما يلي بعض الأمثلة على استخدام السمة fetchpriority
في الترميز، بالإضافة إلى السمة priority
التي يعادل النص البرمجي.
<!-- We don't want a high priority for this above-the-fold image -->
<img src="/images/in_viewport_but_not_important.svg" fetchpriority="low" alt="I'm an unimportant image!">
<!-- We want to initiate an early fetch for a resource, but also deprioritize it -->
<link rel="preload" href="/js/script.js" as="script" fetchpriority="low">
<script>
fetch('https://example.com/', {priority: 'low'})
.then(data => {
// Trigger a low priority fetch
});
</script>
تأثيرات أولوية المتصفِّح وfetchpriority
يمكنك تطبيق السمة fetchpriority
على موارد مختلفة كما هو موضّح في الجدول التالي لزيادة الأولوية المحسوبة أو تقليلها. وفي كل صف، يتم تحديد الأولوية التلقائية لهذا النوع من الموارد من خلال "fetchpriority="auto"
" ( التحكُّم). (متاح أيضًا كمستند Google).
التحميل في مرحلة حظر التنسيق | تحميل واحد تلو الآخر في مرحلة حظر التصميم | ||||
---|---|---|---|---|---|
أولوية الوميض |
VeryHigh | مرتفعة | الوسيط | منخفضة | VeryLow |
DevTools Priority |
الأعلى | مرتفعة | الوسيط | منخفضة | الأدنى |
المورد الرئيسي | ◉ | ||||
CSS (مبكر**) | ⬆◉ | ⬇ | |||
CSS (وقت متأخر**) | ⬆ | ◉ | ⬇ | ||
CSS (عدم تطابق الوسائط***) | ⬆*** | ◉⬇ | |||
النص البرمجي (مبكر** أو ليس من الماسح الضوئي للتحميل المسبق) | ⬆◉ | ⬇ | |||
النص البرمجي (وقت متأخر**) | ⬆ | ◉ | ⬇ | ||
نص برمجي (غير متزامن/تأجيل) | ⬆ | ◉⬇ | |||
الخط | ◉ | ||||
الخط (rel=preload) | ⬆◉ | ⬇ | |||
استيراد | ◉ | ||||
الصورة (في إطار العرض - بعد التنسيق) | ⬆◉ | ⬇ | |||
صورة (أول 5 صور > 10,000 بكسل 2) | ⬆ | ◉ | ⬇ | ||
صورة | ⬆ | ◉⬇ | |||
الوسائط (فيديو/صوت) | ◉ | ||||
XHR (المزامنة) - متوقف | ◉ | ||||
XHR/fetch* (غير متزامن) | ⬆◉ | ⬇ | |||
الجلب المُسبَق | ◉ | ||||
XSL | ◉ |
تحدِّد fetchpriority
الأولوية النسبية، ما يعني أنّها ترفع الأولوية التلقائية أو تخفضها بمقدار مناسب، بدلاً من ضبط الأولوية بشكل صريح على High
أو Low
. ينتج غالبًا عن ذلك أولوية High
أو Low
، ولكن ليس دائمًا. على سبيل المثال، تحتفظ لغة CSS المهمة ذات السمة fetchpriority="high"
بـ "مرتفع جدًا"/"الأعلى". الأولوية، ويؤدي استخدام fetchpriority="low"
في هذه العناصر إلى الاحتفاظ بالقيمة "عالية" الأولوية. ولم تتضمن أي من هذه الحالات ضبط الأولوية بشكل صريح على High
أو Low
.
حالات الاستخدام
استخدِم السمة fetchpriority
عندما تريد منح المتصفّح تلميحًا إضافيًا حول أولوية استرجاع مورد.
زيادة أولوية صورة LCP
يمكنك تحديد fetchpriority="high"
لتعزيز أولوية سرعة عرض أكبر محتوى مرئي (LCP) أو صور مهمة أخرى.
<img src="lcp-image.jpg" fetchpriority="high">
توضِّح المقارنة التالية صفحة "رحلات جوية من Google" مع صورة خلفية LCP محمّلة بأولوية الجلب أو بدونها. بعد ضبط الأولوية على "عالية"، تحسّنت سرعة عرض أكبر جزء من المحتوى على الصفحة (LCP) من 2.6 ثانية إلى 1.9 ثانية.
خفض أولوية صور الجزء المرئي من الصفحة
استخدِم fetchpriority="low"
لخفض أولوية الصور في الجزء المرئي من الصفحة التي لا تكون مهمة بشكل فوري، مثل الصور خارج الشاشة في لوحة عرض دوّارة للصور.
<ul class="carousel">
<img src="img/carousel-1.jpg" fetchpriority="high">
<img src="img/carousel-2.jpg" fetchpriority="low">
<img src="img/carousel-3.jpg" fetchpriority="low">
<img src="img/carousel-4.jpg" fetchpriority="low">
</ul>
على الرغم من أنّ الصور من 2 إلى 4 ستكون خارج إطار العرض، قد يتم اعتبارها "قريبة بما يكفي" لزيادة ظهورها إلى high
وتحميلها أيضًا حتى إذا تمّت إضافة سمة load=lazy
. وبالتالي، فإنّ fetchpriority="low"
هو الحل الصحيح لهذه المشكلة.
في تجربة سابقة مع تطبيق Oodle، استخدمنا هذا الخيار لتقليل أولوية الصور التي لا تظهر عند التحميل. أدى ذلك إلى خفض وقت تحميل الصفحة بمقدار ثانيتين.
تقليل أولوية الموارد المُحمَّلة مسبقًا
لمنع الموارد التي تم تحميلها مسبقًا من منافسة الموارد المهمة الأخرى، يمكنك تقليل أولويتها. استخدِم هذا الأسلوب مع الصور والنصوص البرمجية وCSS.
<!-- Lower priority only for non-critical preloaded scripts -->
<link rel="preload" as="script" href="critical-script.js">
<link rel="preload" as="script" href="non-critical-script.js" fetchpriority="low">
<!-- Preload CSS without blocking render, or other resources -->
<link rel="preload" as="style" href="theme.css" fetchpriority="low" onload="this.rel='stylesheet'">
إعادة ترتيب النصوص البرمجية
يجب أن يتم تحميل النصوص البرمجية التي تحتاج إليها صفحتك أن تكون تفاعلية بسرعة، ولكن يجب ألا تحظر موارد أخرى أكثر أهمية من شأنها حظر العرض. يمكنك وضع علامة async
على هذه المنتجات ذات أولوية عالية.
<script src="async_but_important.js" async fetchpriority="high"></script>
لا يمكنك وضع علامة async
على نص برمجي إذا كان يعتمد على حالات DOM معيّنة. ومع ذلك، إذا تم تشغيلها لاحقًا على الصفحة، يمكنك تحميلها بأولوية أقل:
<script src="blocking_but_unimportant.js" fetchpriority="low"></script>
سيؤدي ذلك إلى حظر المحلل اللغوي عند وصوله إلى هذا النص البرمجي، مع السماح بمنح الأولوية للمحتوى قبل ذلك.
إذا احتجت إلى نموذج DOM المكتمل، يمكنك استخدام السمة defer
(التي يتم تشغيلها بالترتيب بعد DOMContentLoaded) أو حتى async
في أسفل الصفحة.
خفض أولوية عمليات استرجاع البيانات غير المهمة
ينفِّذ المتصفّح fetch
بأولوية عالية. إذا كانت لديك عمليات جلب متعددة قد يتم تنشيطها في وقت واحد، يمكنك استخدام الأولوية التلقائية العالية لعمليات استرجاع البيانات الأكثر أهمية وخفض أولوية البيانات الأقل أهمية.
// Important validation data (high by default)
let authenticate = await fetch('/user');
// Less important content data (suggested low)
let suggestedContent = await fetch('/content/suggested', {priority: 'low'});
استرجاع ملاحظات التنفيذ ذات الأولوية
يمكن أن تؤدي أولوية الجلب إلى تحسين الأداء في حالات استخدام معينة، ولكن هناك بعض الأشياء التي يجب أن تكون على دراية بها عند استخدام أولوية الجلب:
- السمة
fetchpriority
هي تلميح وليست توجيهًا. يحاول المتصفّح احترام الإعدادات المفضّلة للمطوّر، ولكن يمكنه أيضًا تطبيق الإعدادات المفضّلة لأولوية الموارد في ما يتعلّق بأولوية الموارد لحلّ التعارضات. لا تخلِط بين أولوية الجلب والتحميل المُسبق:
- عملية التحميل المُسبق هي عملية جلب إلزامية وليست تلميحًا.
- يتيح التحميل المُسبق للمتصفّح اكتشاف مورد في وقت مبكر، ولكنه لا يزال يجلب المورد حسب الأولوية التلقائية. وعلى العكس، لا تساعدك أولوية الجلب في قابلية الاكتشاف، ولكنها تتيح لك زيادة أولوية الجلب أو تقليلها.
- غالبًا ما تكون ملاحظة آثار التحميل المسبق وقياسه أسهل من تأثيرات تغيير الأولوية.
يمكن لأولوية الجلب أن تكمل عمليات التحميل المُسبق عن طريق زيادة دقّة تحديد الأولويات. إذا سبق لك تحديد تحميل مسبق كأحد العناصر الأولى في
<head>
لصورة LCP، قد لا تؤدي أولوية الجلبhigh
إلى تحسين مقياس LCP بشكل كبير. ومع ذلك، إذا تم التحميل المُسبَق بعد تحميل موارد أخرى، يمكن أن تحسّن أولوية الجلب فيhigh
من سرعة LCP بدرجة أكبر. إذا كانت الصورة المهمة هي صورة خلفية CSS، حمِّلها مسبقًا باستخدامfetchpriority = "high"
.تكون التحسينات المتعلّقة بوقت التحميل من تحديد الأولوية أكثر صلة في البيئات التي تتنافس فيها المزيد من الموارد على معدل نقل البيانات المتاح للشبكة. هذا أمر شائع في اتصالات HTTP/1.x التي لا يمكن فيها إجراء عمليات تنزيل متوازية، أو في اتصالات HTTP/2 أو HTTP/3 ذات النطاق الترددي المنخفض. في هذه الحالات، يمكن أن يساعد تحديد الأولويات في حل المعوقات.
لا تطبّق شبكات توصيل المحتوى (CDN) أولويات HTTP/2 بشكل موحّد، وبشكل مشابه مع HTTP/3. وحتى إذا كان المتصفح ينقل الأولوية من أولوية الجلب، قد لا تعيد شبكة توصيل المحتوى تحديد أولويات الموارد بالترتيب المحدد. وهذا يجعل اختبار أولوية الجلب أمرًا صعبًا. يتم تطبيق الأولويات داخليًا ضمن المتصفح وباستخدام بروتوكولات تتيح تحديد الأولويات (HTTP/2 وHTTP/3). ومع ذلك، لا يزال من المفيد استخدام أولوية الجلب فقط لتحديد أولويات المتصفّح الداخلي بشكل مستقل عن شبكة توصيل المحتوى (CDN) أو دعم المصدر، لأنّ الأولويات غالبًا ما تتغير عندما يطلب المتصفّح موارد. على سبيل المثال، غالبًا ما لا يتم طلب الموارد ذات الأولوية المنخفضة، مثل الصور، بينما يعالج المتصفّح عناصر
<head>
المهمة.قد لا تتمكن من تقديم أولوية الجلب كأفضل ممارسة في التصميم الأولي. في وقت لاحق من دورة التطوير، يمكنك تحديد الأولويات التي يتم تعيينها لموارد مختلفة في الصفحة، وإذا لم تتطابق مع توقعاتك، يمكنك تحديد أولوية الجلب للحصول على مزيد من التحسين.
على المطوّرين استخدام ميزة التحميل المُسبَق لأغراضها المقصودة، أي التحميل المُسبق للموارد التي لم يرصدها المحلل اللغوي (الخطوط وعمليات الاستيراد وصور LCP الخلفية). سيؤثر موضع تلميح preload
في وقت تحميل المورد مسبقًا.
تتعلق أولوية الاسترجاع بكيفية استرجاع المورد عند استرجاعه.
نصائح لاستخدام عمليات التحميل المُسبق
يجب مراعاة ما يلي عند استخدام عمليات التحميل المُسبق:
- يؤدي تضمين التحميل المسبق في عناوين HTTP إلى وضعها قبل كل شيء آخر في ترتيب التحميل.
- بشكل عام، يتم تحميل عمليات التحميل المُسبقة حسب ترتيب وصول المحلل اللغوي إليها لأي شيء ذي أولوية
Medium
أو أعلى. يجب توخّي الحذر عند تضمين عمليات التحميل المُسبق في بداية محتوى HTML. - من المحتمل أن تعمل عمليات التحميل المُسبق للخط على نحو أفضل في نهاية الرأس أو بدايته.
- يجب تنفيذ عمليات الاستيراد المُسبقة (
import()
الديناميكية أوmodulepreload
) بعد علامة النص البرمجي التي تحتاج إلى الاستيراد، لذا تأكَّد من تحميل النص البرمجي أو تحليله أولاً حتى يمكن تقييمه أثناء تحميل ملحقاته. - يكون لعمليات التحميل المُسبق للصور أولوية
Low
أوMedium
بشكل تلقائي. رتِّبها بالنسبة إلى النصوص البرمجية غير المتزامنة وغيرها من العلامات ذات الأولوية المنخفضة أو الأدنى.
السجلّ
تم تجربة ميزة "أولوية الجلب" لأول مرة في Chrome كميزة تجريبية أصلية في عام 2018، ثم تمت تجربتها مرة أخرى في عام 2021 باستخدام السمة importance
. وكان يُطلق عليها في ذلك الوقت تلميحات الأولوية. ومنذ ذلك الحين، تم تغيير الواجهة إلى fetchpriority
لكل من HTML وpriority
لواجهة برمجة تطبيقات الجلب في JavaScript كجزء من عملية معايير الويب. للحد من الالتباس، نسمي الآن "أولوية جلب واجهة برمجة التطبيقات" هذه.
الخاتمة
من المرجّح أن يهتم المطوّرون بأولوية الجلب مع الإصلاحات في سلوك التحميل المُسبق والتركيز مؤخرًا على "مؤشرات أداء الويب الأساسية" و"سرعة عرض أكبر محتوى مرئي". وتحتوي الآن على مقابض مقابض إضافية متاحة لتحقيق تسلسل التحميل المفضّل.