مدى استجابة الصفحة لتفاعلات المستخدم (INP)

التوافق مع المتصفح

  • 96
  • 96
  • x
  • x

المصدر

"مدى استجابة الصفحة لتفاعلات المستخدم" (INP) هو مقياس ثابت لمقياس "مؤشرات أداء الويب" يقيّم مدى استجابة الصفحة لتفاعلات المستخدمين باستخدام البيانات الواردة من واجهة برمجة تطبيقات "توقيت الحدث". يرصد مقياس INP (مدى استجابة الصفحة لتفاعلات المستخدم) وقت الاستجابة الخاص بجميع تفاعلات النقر والنقر ولوحة المفاتيح مع الصفحة طوال فترة عرضها، ويسجّل أطول مدة، مع تجاهل القيم الشاذّة. يعني انخفاض INP أنّ الصفحة قادرة باستمرار على الاستجابة بسرعة للغالبية العظمى من تفاعلات المستخدمين.

تعني الاستجابة الجيدة أن الصفحة تستجيب بسرعة للتفاعلات. عندما تتجاوب الصفحة مع أحد التفاعلات، يقدّم المتصفّح ملاحظات مرئية في الإطار التالي الذي تعرضه لتوضيح أنّ التفاعل كان ناجحًا. على سبيل المثال، يمكنها تقديم ملاحظات حول ما يلي:

  • ما إذا كان قد تمت إضافة سلعة معيّنة إلى سلّة التسوّق على الإنترنت
  • ما إذا تم فتح قائمة تنقُّل على الأجهزة الجوّالة
  • ما إذا كانت تتم مصادقة محتوى تسجيل الدخول من خلال الخادم أم لا.

تستغرق بعض التفاعلات بشكل طبيعي وقتًا أطول من غيرها، ولكن بالنسبة للتفاعلات المعقدة بشكل خاص، من المهم تقديم بعض الملاحظات المرئية الأولية بسرعة لإخبار المستخدم بحدوث شيء ما. الوقت حتى الطلاء التالي هو أقرب فرصة للقيام بذلك. وبالتالي، لا يكون الهدف من مقياس INP هو قياس كل التأثيرات النهائية للتفاعل (مثل عمليات استرجاع الشبكة وتحديثات واجهة المستخدم من العمليات الأخرى غير المتزامنة)، بل الوقت الذي يتم فيه حظر الرسم التالي. من خلال تأخير الملاحظات المرئية، فإنك تجعل المستخدمين يعتقدون أن الصفحة لا تستجيب لأفعالهم.

إنّ الهدف من مقياس INP هو تقليل الوقت الذي يبدأ فيه المستخدم التفاعل وحتى عرض الإطار التالي، وذلك لجميع التفاعلات التي يبدأها المستخدم أو معظمها.

مثال على مدى الاستجابة الضعيفة مقابل الاستجابة الجيدة وعلى اليسار، تمنع المهام الطويلة فتح الأكورديون. يؤدي ذلك إلى نقر المستخدم عدة مرات على الإعلان، ما يعني أنّ التجربة معطّلة. وعندما تنتهي سلسلة التعليمات الرئيسية، فإنها تعالج الإدخالات المتأخرة، ما يؤدي إلى فتح أكورديون وإغلاقه بشكل غير متوقع. على اليسار، يتم فتح صفحة أكورديون بسرعة وبدون أي عرقلة من خلال صفحة أكثر استجابة.
ملاحظة حول كيفية احتساب INP

ويتم احتساب مدى استجابة الصفحة لتفاعلات المستخدم (INP) من خلال ملاحظة جميع التفاعلات التي تتم مع الصفحة. في معظم المواقع الإلكترونية، يتم تسجيل التفاعل مع أسوأ وقت استجابة على أنّه مقياس "مدى استجابة الصفحة لتفاعلات المستخدم" (INP). مع ذلك، بالنسبة إلى الصفحات التي تحتوي على أعداد كبيرة من التفاعلات، قد تؤدي العوائق العشوائية إلى تفاعل في وقت استجابة سريع بشكل غير عادي على موقع إلكتروني سريع الاستجابة. وكلما زاد عدد التفاعلات، زاد احتمال حدوثها. لمواجهة ذلك ولتقديم قياس أفضل للاستجابة الفعلية لهذه الأنواع من الصفحات، نتجاهل أعلى تفاعل لكل 50 تفاعلاً. بما أنّ الغالبية العظمى من تجارب الصفحات لا تتضمّن أكثر من 50 تفاعلاً، لا يزال المتصفّح يسجّل في أغلب الأحيان أسوأ تفاعل. وبعد ذلك، يتم عادةً تسجيل الشريحة المئوية الخامسة والسبعين من جميع مشاهدات الصفحة على الويب، ما يؤدي إلى إزالة القيم الشاذّة لمنح قيمة أكثر تمثيلاً لتجربة المستخدم العامة.

التفاعل هو مجموعة من معالِجات الأحداث التي يتم تنشيطها أثناء إيماءة المستخدم المنطقية نفسها. على سبيل المثال، تتضمّن تفاعلات "النقر" على جهاز تعمل باللمس أحداثًا متعددة، مثل pointerup وpointerdown وclick. يمكن أن يكون التفاعل ناتجًا من لغة JavaScript أو CSS أو عناصر تحكّم المتصفّح المضمّنة مثل عناصر النموذج أو مزيج من هذه العناصر.

يتألف وقت استجابة التفاعل من أطول مدة واحدة لمجموعة من معالِجات الأحداث التي توجِّه التفاعل، من الوقت الذي يبدأ فيه المستخدم التفاعل إلى اللحظة التي يتم فيها عرض الإطار التالي بملاحظات مرئية.

نقطة رئيسية: لمزيد من التفاصيل حول كيفية قياس INP، يمكنك الاطّلاع على مقالة "ماذا يحدث في التفاعل؟".

ما هي درجة INP الجيدة؟

لضمان تقديم تجارب المستخدمين ذات سرعة الاستجابة الجيدة، يكون الحد الأدنى الجيد للقياس هو الشريحة المئوية الخامسة والسبعين من عمليات تحميل الصفحات المسجَّلة في الحقل، ويكون مقسّمًا على أجهزة الجوّال وأجهزة الكمبيوتر المكتبي:

  • إذا كان مقياس INP يساوي 200 ملّي ثانية أو أقلّ منه، يعني ذلك أنّ صفحتك تستجيب بشكل جيد.
  • إذا كان مقياس INP بين 200 ملّي و500 مللي ثانية، يعني ذلك أنّ استجابة صفحتك بحاجة إلى تحسين.
  • إذا تجاوز مقياس INP 500 ملي ثانية، يعني ذلك أنّ استجابة الصفحة ضعيفة.
إنّ قيم مقياس INP الجيدة هي 200 ملّي ثانية أو أقلّ، والقيم الضعيفة أكبر من 500 مللي ثانية، وأي قيمة تتراوح بين 10% و 100 ريال سعودي.
إنّ القيم الجيدة لمقياس INP هي 200 ملي ثانية أو أقل. القيم السيئة التي تزيد عن 500 ملي ثانية.

ماذا يوجد في التفاعل؟

مخطّط بياني يصوِّر تفاعلاً في سلسلة التعليمات الرئيسية. يُجري المستخدم إدخالاً أثناء تشغيل حظر المهام. ويتأخر الإدخال حتى تكتمل هذه المهام، وبعد ذلك يتم تشغيل معالِجات أحداث المؤشر ورفع الماوس والنقر، ثم بدء عمل العرض والرسم حتى يتم عرض الإطار التالي.
حياة التفاعل. يستمر تأخير الإدخال إلى أن تبدأ معالِجات الأحداث ، وقد يرجع السبب في ذلك إلى عدّة عوامل، مثل المهام الطويلة في سلسلة التعليمات الرئيسية. بعد ذلك، يتم تشغيل معالِجات أحداث التفاعل، ويحدث تأخير آخر قبل عرض الإطار التالي.

غالبًا ما يكون المحرّك الأساسي للتفاعل هو JavaScript، على الرغم من أنّ المتصفّحات توفّر التفاعل من خلال عناصر تحكّم لا تدعمها JavaScript، مثل مربّعات الاختيار وأزرار الاختيار وعناصر التحكّم التي توفّرها خدمة CSS.

لأغراض مقياس INP، يتم استخدام أنواع التفاعلات التالية فقط:

  • النقر بالماوس.
  • النقر على جهاز مزوّد بشاشة تعمل باللمس
  • الضغط على مفتاح في لوحة مفاتيح خارجية أو على الشاشة

نقطة رئيسية: لا يؤثّر التمرير والتمرير في مقياس "مدى استجابة الصفحة لتفاعلات المستخدم" (INP). مع ذلك، يتضمّن التمرير باستخدام لوحة المفاتيح (شريط المسافة أو الصفحة إلى الأعلى أو الصفحة للأسفل وما إلى ذلك) ضغطة المفتاح، ما يمكن أن يؤدي إلى تشغيل أحداث أخرى يقيسها مقياس INP. ولا يتم أخذ أي انتقال ناتج عن ذلك في الاعتبار في حساب INP.

تحدث التفاعلات في المستند الرئيسي أو في إطارات iframe المضمّنة في المستند، مثل النقر على "تشغيل" على فيديو مضمّن. بما أنّ المستخدمين النهائيين ليسوا على دراية بأجزاء الصفحة التي يتم تضمينها في إطارات iframe، عليك قياس مدى استجابة الصفحة لتفاعلات المستخدم (INP) ضمن إطارات iframe لقياسها بدقة على مستوى الصفحة بأكملها. ولا يمكن لواجهات برمجة تطبيقات الويب المستندة إلى JavaScript الوصول إلى محتوى iframe، وقد لا تكون قادرة على قياس مقياس INP ضمن إطار iframe. وهذا ما يظهر على أنّه فرق بين CrUX وRUM.

يمكن أن تتألف التفاعلات من أحداث متعدّدة. على سبيل المثال، تشمل ضغطة المفتاح أحداث keydown وkeypress وkeyup، وتشمل تفاعلات النقر حدثَي pointerup وpointerdown. يتم اختيار الحدث ذي أطول مدة ضمن التفاعل كوقت استجابة التفاعل.

تصوير لتفاعل أكثر تعقيدًا يتضمن تفاعلين. الأول هو حدث الماوس، والذي ينتج عنه إطار قبل رفع زر الماوس، والذي يبدأ المزيد من العمل حتى يتم تقديم إطار آخر كنتيجة.
عندما يضغط المستخدم على زر الماوس للنقر، سيعالج المتصفّح عملية التفاعل ويعرض إطارًا للملاحظات المرئية. عندما يضغط المستخدم على زر الماوس، يتم تشغيل سلسلة أخرى من معالِجات الأحداث قبل أن يتمكن المتصفّح من عرض إطار آخر.

يتم احتساب INP عندما يغادر المستخدم الصفحة، ما يؤدي إلى الحصول على قيمة واحدة تمثّل مدى استجابة الصفحة بشكل عام طوال دورة حياتها. يشير انخفاض INP إلى أنّ الصفحة تستجيب بشكل موثوق للبيانات التي أدخلها المستخدم.

ما هي أوجه الاختلاف بين مقياس "مدى استجابة الصفحة لتفاعلات المستخدم" (INP) و"مهلة الاستجابة الأولى" (FID)؟

إنّ مقياس INP هو المقياس التالي لمهلة الاستجابة الأولى (FID). على الرغم من أنّ كلاهما مقياسًا للاستجابة، يقيس مقياس FID فقط مهلة إدخال بيانات التفاعل الأول على الصفحة. يتحسّن مقياس "مدى استجابة الصفحة لتفاعلات المستخدم" (INP) من خلال مراعاة جميع التفاعلات على الصفحة، بدءًا من تأخير الإدخال ووصولاً إلى الوقت الذي يستغرقه تشغيل معالِجات الأحداث، وأخيرًا إلى أن يعرض المتصفِّح الإطار التالي.

تعني هذه الاختلافات أنّ كلاً من INP وFID هما نوعان مختلفان من مقاييس الاستجابة. عندما كان FID هو مقياس لاستجابة التحميل تم تصميمه لتقييم انطباع المستخدم الأول عن الصفحة لدى المستخدم، يُعدّ INP مؤشرًا أكثر موثوقية لمستوى الاستجابة بشكل عام، بغض النظر عن الوقت الذي تحدث فيه التفاعلات مع الصفحة.

ماذا لو لم يتم تسجيل أي قيمة لمقياس "مدى استجابة الصفحة لتفاعلات المستخدم" (INP)؟

من الممكن ألا تعرض الصفحة أي قيمة INP. يمكن أن يحدث هذا لعدة أسباب، بما في ذلك ما يلي:

  • تم تحميل الصفحة، ولكن لم يتفاعل المستخدم معها مطلقًا.
  • تم تحميل الصفحة، لكن تفاعل المستخدم معها باستخدام إيماءات لا يتم قياسها، مثل التمرير أو التمرير فوق العناصر.
  • يتم الدخول إلى الصفحة من خلال برنامج تتبُّع، مثل زاحف بحث أو متصفّح بلا واجهة مستخدم رسومية، غير مبرمجة للتفاعل مع الصفحة.

كيفية قياس INP

يمكن قياس INP في المجال والمختبر باستخدام مجموعة متنوعة من الأدوات.

نقطة رئيسية: إنّ أفضل طريقة لقياس مدى استجابة الصفحة لتفاعلات المستخدم (INP) لموقعك الإلكتروني هي جمع المقاييس من مستخدمين فعليين في المجال. إذا كنت معتادًا على الاعتماد على بيانات المختبر لتقييم الأداء، ننصحك بقراءة المقالة سبب اختلاف بيانات المختبرات والبيانات الميدانية (وما يجب فعله بشأنها).

في الميدان

من الناحية المثالية، تبدأ رحلتك نحو تحسين مقياس INP من خلال البيانات الميدانية. وفي أفضل حالاتها، توفّر لك البيانات الفعلية من ميزة "تتبُّع المستخدم الفعلي" (RUM) قيمة INP للصفحة فحسب، بل توفّر أيضًا البيانات السياقية التي تسلّط الضوء على التفاعل المسؤول عن قيمة مقياس "مدى استجابة الصفحة لتفاعلات المستخدم" (INP) نفسها، سواء حدث التفاعل أثناء تحميل الصفحة أو بعدها، بالإضافة إلى نوع التفاعل (النقر أو الضغط أو الضغط) وغيرها من المعلومات القيّمة.

إذا كان موقعك الإلكتروني مؤهَّلاً للإدراج في تقرير تجربة المستخدم على Chrome، يمكنك الحصول سريعًا على بيانات حقل INP من خلال CrUX في "إحصاءات PageSpeed"، إلى جانب بيانات عن "مؤشرات أداء الويب الأساسية" الأخرى. ويمكنك الحصول على الأقل على صورة على مستوى المصدر بشأن مقياس INP لموقعك الإلكتروني، ولكن في بعض الحالات، يمكنك أيضًا الحصول على بيانات على مستوى الصفحة.

مع ذلك، يمكن أن يخبرك CrUX بأنّ هناك مشكلة على مستوى عالٍ، ولكنّه غالبًا ما لا يوفر تفاصيل كافية للمساعدة في فهم المشكلة بشكل كامل. يمكن أن يساعدك حل RUM في الكشف عن المزيد من التفاصيل حول الصفحات أو المستخدمين أو تفاعلات المستخدمين التي تشهد تفاعلات بطيئة. إن القدرة على إسناد INP إلى التفاعلات الفردية تساعد في تجنب التخمين والجهد الضائع.

في جلسة المعمل،

على النحو الأمثل، سترغب في بدء الاختبار في التمرين المعملي بعد أن تتوفر لديك بيانات ميدانية تشير إلى أن لديك تفاعلات بطيئة. ومع ذلك، في غياب البيانات الميدانية، هناك بعض الاستراتيجيات لإعادة إنتاج التفاعلات البطيئة في المختبر. تتضمّن الاستراتيجيات اتّباع تدفقات المستخدمين الشائعة واختبار التفاعلات أثناء الاختبار، بالإضافة إلى التفاعل مع الصفحة أثناء التحميل، عندما تكون سلسلة التعليمات الرئيسية أكثر ازدحامًا في كثير من الأحيان، من أجل عرض التفاعلات البطيئة خلال هذا الجزء المهم من تجربة المستخدم.

طريقة تحسين مقياس INP

يمكنك الاطّلاع على مجموعة الأدلة حول تحسين INP للحصول على إرشادات حول تحديد التفاعلات البطيئة في المجال واستخدام البيانات المعملية لتحسينها.

سجلّ التغييرات

في بعض الأحيان، يتم اكتشاف أخطاء في واجهات برمجة التطبيقات المستخدمة لقياس المقاييس، وأحيانًا في تعريفات المقاييس نفسها. نتيجةً لذلك، يجب إجراء تغييرات في بعض الأحيان، ويمكن أن تظهر هذه التغييرات كتحسينات أو انحدارات في تقاريرك ولوحات البيانات الداخلية.

لمساعدتك في إدارة ذلك، ستظهر جميع التغييرات التي تطرأ على تنفيذ هذه المقاييس أو تعريفها في سجلّ التغييرات هذا.

إذا كانت لديك أي ملاحظات حول هذه المقاييس، يُرجى تقديمها في مجموعة Google الخاصة بملاحظات وآراء المستخدمين على الويب.