تُظهر بيانات استخدام Chrome أنّ% 90 من وقت المستخدِم على الصفحة يتم قضاءه بعد تحميلها، لذا من المهم قياس وقت الاستجابة بعناية خلال دورة حياة الصفحة. وهذا ما يقيسه مقياس INP.
تعني الاستجابة الجيدة أنّ الصفحة تستجيب بسرعة للتفاعلات. عندما تستجيب الصفحة لتفاعل، يعرض المتصفّح ملاحظات مرئية في اللقطة التالية التي يعرضها. تُعلمك الملاحظات المرئية، على سبيل المثال، ما إذا كان يتم بالفعل إضافة سلعة إلى سلة تسوّق على الإنترنت، وما إذا كانت قد تم فتح قائمة تنقّل على الأجهزة الجوّالة، وما إذا كان الخادم يُجري مصادقة على محتوى نموذج تسجيل الدخول، وما إلى ذلك.
تستغرق بعض التفاعلات وقتًا أطول من غيرها، ولكن بالنسبة إلى التفاعلات المعقّدة بشكل خاص، من المهم تقديم بعض الملاحظات المرئية الأولية بسرعة لإعلام المستخدم بأنّ هناك عملية جارية. والإطار التالي الذي سيرسمه المتصفّح هو أقرب فرصة لإجراء ذلك.
لذلك، لا يهدف مقياس "مدى استجابة الصفحة لتفاعلات المستخدم" إلى قياس جميع التأثيرات النهائية للتفاعل، مثل عمليات جلب البيانات من الشبكة وتعديلات واجهة المستخدم من العمليات غير المتزامنة الأخرى، بل يهدف إلى قياس الوقت الذي يتم فيه حظر عملية العرض التالي. من خلال تأخير الملاحظات المرئية، قد يعتقد المستخدمون أنّ الصفحة لا تستجيب بسرعة كافية، وقد تم تطوير مقياس INP لمساعدة المطوّرين في قياس هذا الجزء من تجربة المستخدم.
في الفيديو التالي، يقدّم المثال على اليسار ملاحظات مرئية فورية بأنّه يتم فتح أكورديون. يوضّح المثال على يمين الصفحة مدى ضعف الاستجابة، وكيف يمكن أن يؤدّي ذلك إلى تقديم تجارب سيئة للمستخدمين.
يشرح هذا الدليل آلية عمل مؤشر INP وكيفية قياسه ويشير إلى مراجع لتحسينه.
ما هو برنامج INP؟
إنّ INP هو مقياس يقيّم مدى استجابة الصفحة بشكل عام لتفاعلات المستخدم من خلال رصد وقت الاستجابة لجميع التفاعلات المتعلقة بالنقر وبلوحة المفاتيح التي تحدث طوال الفترة التي يزور فيها المستخدم الصفحة. تمثّل قيمة INP النهائية أطول تفاعل تم رصده، مع تجاهل القيم الشاذة.
يتم احتساب مقياس INP من خلال مراقبة جميع التفاعلات التي تتم مع الصفحة. في معظم المواقع الإلكترونية، يتم تسجيل التفاعل الذي يتضمن أكبر وقت استجابة على أنّه INP.
ومع ذلك، بالنسبة إلى الصفحات التي تتضمّن أعدادًا كبيرة من التفاعلات، يمكن أن تؤدي الأعطال العشوائية إلى حدوث تفاعل بطيء بشكل غير معتاد على صفحة سريعة الاستجابة. وكلما زاد عدد التفاعلات التي تحدث على صفحة معيّنة، زادت احتمالية حدوث ذلك.
لتقديم قياس أفضل للاستجابة الفعلية للصفحات التي تتضمّن عددًا كبيرًا من التفاعلات، نتجاهل أعلى تفاعل واحد لكل 50 تفاعل. لا تتضمّن الغالبية العظمى من تجارب الصفحة أكثر من 50 تفاعلًا، لذا يتم تسجيل أسوأ تفاعل في أغلب الأحيان. بعد ذلك، يتمّ تسجيل الشريحة المئوية الخامسة والسبعون من جميع مشاهدات الصفحة كالمعتاد، ما يؤدي إلى إزالة القيم الشاذة لتوفير قيمة تتوافق مع تجربة الغالبية العظمى من المستخدِمين أو أفضل منها.
التفاعل هو مجموعة من معالجات الأحداث التي يتم تشغيلها أثناء إيماءة المستخدم المنطقية نفسها. على سبيل المثال، تشمل التفاعلات من خلال "النقر" على جهاز يعمل باللمس أحداثًا متعددة، مثل pointerup
وpointerdown
وclick
. يمكن أن يكون التفاعل مستندًا إلى JavaScript أو CSS أو عناصر التحكّم المدمجة في المتصفّح (مثل عناصر النماذج) أو مزيج من هذه العناصر.
يتألّف وقت استجابة التفاعل من المدة الأطول لمجموعة من معالجات الأحداث التي تسبّب التفاعل، بدءًا من وقت بدء المستخدم التفاعل إلى اللحظة التي يتمكّن فيها المتصفّح من عرض إطار في المرة التالية.
ما هي نتيجة INP الجيدة؟
من الصعب تثبيت تصنيفات مثل "جيد" أو "سيئ" على مقياس الاستجابة. من ناحية أخرى، تريد تشجيع ممارسات التطوير التي تعطي الأولوية للاستجابة الجيدة. من ناحية أخرى، يجب مراعاة حقيقة أنّ هناك اختلافًا كبيرًا في إمكانات الأجهزة التي يستخدمها المستخدمون لتحديد توقعات التطوير التي يمكن تحقيقها.
لضمان تقديم تجارب مستخدمين تتسم بوقت استجابة جيد، يمكنك قياس الشريحة المئوية الخامسة والسبعين من عمليات تحميل الصفحات المسجّلة في الميدان، مقسّمة على الأجهزة الجوّالة وأجهزة الكمبيوتر المكتبي:
- إذا كانت قيمة مقياس INP أقل من 200 ملي ثانية أو تساويها، يعني ذلك أنّ الصفحة سريعة الاستجابة.
- إذا كان مقياس INP أعلى من 200 ملي ثانية وأقل من أو يساوي 500 ملي ثانية، يعني ذلك أنّ سرعة استجابة الصفحة بحاجة إلى تحسين.
- إذا كان مقياس INP أعلى من 500 ملي ثانية، يعني ذلك أنّ الصفحة بطيئة الاستجابة.
ما المقصود بالتفاعل؟
غالبًا ما يكون JavaScript هو العامل الأساسي في التفاعل، على الرغم من أنّ المتصفّحات توفّر تفاعلًا من خلال عناصر التحكّم التي لا تعمل باستخدام JavaScript، مثل مربّعات الاختيار وأزرار الاختيار وعناصر التحكّم التي تعمل باستخدام CSS.
وفقًا لأغراض مقياس INP، لا يتم رصد سوى أنواع التفاعلات التالية:
- النقر باستخدام الماوس
- النقر على جهاز مزوّد بشاشة تعمل باللمس
- الضغط على مفتاح في لوحة مفاتيح خارجية أو لوحة مفاتيح تظهر على الشاشة
تحدث التفاعلات في المستند الرئيسي أو في إطارات iframe المضمّنة في المستند، مثل النقر على زر التشغيل في فيديو مضمّن. لن يكون المستخدمون النهائيون على دراية بما إذا كان هناك إطار iframe أم لا، لذلك، يجب استخدام INP ضمن إطارات iframe لقياس تجربة المستخدم للصفحة ذات المستوى الأعلى. بما أنّ واجهات برمجة تطبيقات JavaScript للويب لا يمكنها الوصول إلى محتوى إطارات iframe، قد يظهر ذلك كاختلاف بين CrUX وRUM.
يمكن أن تتألف التفاعلات من أحداث متعددة. على سبيل المثال، تتضمّن ضغطة مفتاح الأحداث keydown
وkeypress
وkeyup
. انقر على التفاعلات التي تحتوي على حدثَي pointerup
وpointerdown
. إنّ الحدث الذي يمتلك أطول مدة ضمن التفاعل هو ما يساهم في إجمالي وقت استجابة التفاعل.
يتم احتساب مقياس INP للصفحة عندما يغادر المستخدِم الصفحة. والنتيجة هي قيمة واحدة تمثّل مدى استجابة الصفحة بشكل عام طوال دورة حياتها. يعني انخفاض مقياس INP أنّ الصفحة كانت تستجيب بشكل موثوق للبيانات التي يدخلها المستخدم.
كيف يختلف مقياس INP عن مقياس مهلة الاستجابة لأوّل إدخال (FID)؟
"مدى استجابة الصفحة لتفاعلات المستخدم" هو المقياس البديل لمقياس مهلة الاستجابة الأولى (FID). على الرغم من أنّ كلا المقياسَين يقيسان مدى استجابة الصفحة، يقيس مقياس FID فقط تأخُّر الإدخال للتفاعل الأول على الصفحة. يُحسِّن مقياس INP من مقياس FID من خلال رصد جميع التفاعلات على الصفحة، بدءًا من مهلة الاستجابة للإدخال، إلى الوقت الذي يستغرقه تشغيل معالجات الأحداث، وأخيرًا إلى أن يرسم المتصفّح الإطار التالي.
تعني هذه الاختلافات أنّ كلاً من INP وFID نوعان مختلفان من مقاييس الاستجابة. في حين أنّ مهلة الاستجابة لأوّل إدخال (FID) كانت مقياسًا لاستجابة التحميل مصمّمًا لتقييم الانطباع الأول للمستخدم عن الصفحة، فإنّ INP هو مؤشر أكثر موثوقية على الاستجابة العامة، بغض النظر عن وقت حدوث التفاعلات على الصفحة.
ماذا يحدث إذا لم يتم الإبلاغ عن أي قيمة INP؟
من الممكن أن لا تعرض الصفحة أي قيمة INP. يمكن أن يحدث ذلك لعدد من الأسباب، بما في ذلك ما يلي:
- تم تحميل الصفحة، ولكن لم ينقر المستخدم على أي رابط أو يضغط على أي مفتاح على لوحة المفاتيح.
- تم تحميل الصفحة، ولكن تفاعل المستخدم معها باستخدام إيماءات لا يتم قياسها، مثل الانتقال للأعلى أو للأسفل أو التمرير فوق العناصر.
- يتم الوصول إلى الصفحة من خلال برنامج آلي، مثل الزاحف في محرّك بحث أو متصفّح بدون واجهة مستخدم لم يتم إعداد نص برمجي له للتفاعل مع الصفحة.
كيفية قياس مدى استجابة الصفحة لتفاعلات المستخدم
يمكن قياس INP في كلّ من الميدان والمختبر، إلى الحدّ الذي يمكنك فيه محاكاة تفاعلات المستخدمين الواقعية.
في المجال
من الأفضل أن تبدأ رحلتك في تحسين INP ببيانات الحقل. في أفضل حالاتها، لن تمنحك بيانات الحقل من ميزة "مراقبة المستخدِمين الفعليين" (RUM) قيمة INP للصفحة فحسب، بل ستمنحك أيضًا بيانات سياقية تُبرز التفاعل المحدّد المسؤول عن قيمة INP نفسها، سواء حدث التفاعل أثناء تحميل الصفحة أو بعدها، ونوع التفاعل (النقر أو الضغط على مفتاح أو النقر)، وغيرها من المُدد الزمنية القيّمة التي يمكن أن تساعدك في تحديد جزء التفاعل الذي كان يؤثر في الاستجابة.
إذا كان موقعك الإلكتروني مؤهَّلاً للظهور في تقرير تجربة مستخدم Chrome (CrUX)، يمكنك الحصول بسرعة على بيانات الاستخدام الفعلي لمقياس "مدى استجابة الصفحة لتفاعلات المستخدم" من خلال CrUX في "إحصاءات PageSpeed" (ومقاييس "مؤشرات أداء الويب الأساسية" الأخرى). على الأقل، يمكنك الحصول على صورة على مستوى المصدر لبيانات INP لموقعك الإلكتروني، ولكن في بعض الحالات، يمكنك أيضًا الحصول على بيانات على مستوى عنوان URL.
ومع أنّ CrUX يمكنه إعلامك إذا كانت هناك مشكلة، لا يمكنه إعلامك بسبب المشكلة. يمكن أن يساعدك حلّ RUM في اكتشاف المزيد من التفاصيل حول الصفحات أو المستخدِمين أو تفاعلات المستخدِمين التي تواجه مشاكل في الاستجابة. من خلال تحديد مصدر مقياس مدى استجابة الصفحة لتفاعلات المستخدم (INP) إلى تفاعلات فردية، يمكنك تجنُّب التخمينات والجهود غير المجدية.
في جلسة المعمل
من الأفضل أن تبدأ الاختبار في الميزات الاختبارية بعد الحصول على بيانات ميدانية تشير إلى أنّ التفاعلات مع الصفحة بطيئة. ستجعل البيانات الميدانية من إعادة إنتاج التفاعلات التي تؤدي إلى حدوث مشاكل في المختبر مهمة أكثر بساطة.
من الممكن تمامًا، مع ذلك، ألا تتوفّر لديك بيانات الاستخدام الفعلي. على الرغم من أنّه يمكن قياس مدى استجابة الصفحة لتفاعلات المستخدم (INP) في بعض أدوات المختبر، فإنّ قيمة INP الناتجة للصفحة أثناء الاختبار في المختبر ستعتمد على التفاعلات التي يتم إجراؤها خلال فترة القياس. يمكن أن تكون سلوكيات المستخدمين غير متوقّعة ومتغيّرة للغاية، ما يعني أنّ اختبارك في المختبر قد لا يُظهر التفاعلات التي تؤدي إلى حدوث مشاكل بالطريقة نفسها التي يمكن أن تُظهرها البيانات الميدانية. بالإضافة إلى ذلك، لن تُبلغ بعض أدوات المختبر عن مقياس INP للصفحة لأنّها ترصد فقط تحميل الصفحة بدون أي تفاعلات. في هذه الحالات، قد يكون إجمالي وقت الحظر (TBT) مقياسًا بديلاً معقولاً لمقياس INP، ولكنه ليس بديلاً عن INP بحد ذاته.
على الرغم من أنّ هناك قيودًا في أدوات المختبر عند تقييم INP للصفحة، هناك بعض الاستراتيجيات لإعادة إنتاج التفاعلات البطيئة في المختبر. وتشمل الاستراتيجيات اتّباع مسارات المستخدمين الشائعة واختبار التفاعلات على طول المسار، بالإضافة إلى التفاعل مع الصفحة أثناء تحميلها، عندما يكون الخيط الرئيسي غالبًا أكثر انشغالاً، وذلك لتحديد التفاعلات البطيئة خلال هذا الجزء المهم من تجربة المستخدم.
كيفية تحسين مقياس INP
تتوفّر مجموعة من الأدلة حول تحسين INP لإرشادك خلال عملية تحديد التفاعلات البطيئة في الميدان واستخدام بيانات المختبر لمساعدتك في تحديد الأسباب وتحسينها.
سجلّ التغييرات
في بعض الأحيان، يتم اكتشاف أخطاء في واجهات برمجة التطبيقات المستخدَمة لقياس المقاييس، وفي بعض الأحيان في تعريفات المقاييس نفسها. ونتيجةً لذلك، يجب إجراء تغييرات في بعض الأحيان، ويمكن أن تظهر هذه التغييرات كتحسينات أو تراجعات في التقارير ولوحات البيانات الداخلية.
لمساعدتك في إدارة ذلك، سيتم عرض جميع التغييرات التي تطرأ على تنفيذ هذه المقاييس أو تعريفها في سجلّ التغييرات هذا.
إذا كانت لديك ملاحظات حول هذه المقاييس، يُرجى تقديمها في مجموعة web-vitals-feedback على Google.
اختبِر معلوماتك
ما هو الهدف الأساسي لمقياس INP؟
ما هي أنواع التفاعلات التالية التي يتم رصدها لأغراض احتساب INP؟ (اختَر كلّ الإجابات المناسبة)
كيف يتم تحديد "وقت الاستجابة" لتفاعل مع مقياس مدى استجابة الصفحة لتفاعلات المستخدم (INP)؟
ما الفرق بين INP وFID؟
في أيّ ظروف قد لا تكون بيانات INP متاحة لصفحة في أدوات مثل "إحصاءات PageSpeed"؟
ما هي الاستراتيجية الأكثر فعالية لإعادة إنتاج التفاعلات البطيئة في بيئة مختبرية؟
✨ تم إنشاء هذا الاختبار من خلال Gemini 1.5 وراجعه فريق المراجعين. مشاركة ملاحظاتك