استخدام أدوات معالجة البيانات السلبية لتحسين عملية التنقّل في الصفحة

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

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

تتوافق معظم المتصفّحات مع أدوات معالجة الأحداث السلبية. اطّلِع على توافق المتصفّح.

أسباب تعذُّر تدقيق أداة معالجة الأحداث السلبية في Lighthouse

يُعلِم Lighthouse بأدوات معالجة الأحداث التي قد تؤخّر الانتقال إلى أسفل الصفحة:

تُظهر عملية تدقيق Lighthouse أنّ الصفحة لا تستخدم أدوات معالجة الأحداث السلبية لتحسين أداء التمرير

تستخدِم أداة Lighthouse العملية التالية لتحديد أدوات معالجة الأحداث التي قد تؤثّر في أداء الانتقال إلى الأسفل أو للأعلى:

  1. جمع جميع أدوات معالجة الأحداث في الصفحة
  2. فلترة المستمعين الذين لا يستخدمون الأجهزة التي تعمل باللمس أو الأجهزة التي تعمل بالدواسة
  3. فلترة المستمعين الذين يتصلون بالرقم preventDefault()
  4. فلترة المستمعين من مضيف مختلف عن الصفحة

تصفّي أداة Lighthouse مستمعي البيانات من مضيفين مختلفين لأنّه من المحتمل ألا يكون لديك التحكّم في هذه النصوص البرمجية. قد تكون هناك نصوص برمجية تابعة لجهات خارجية تضرّ بأداء الانتقال للأعلى أو للأسفل في صفحتك، ولكنّ هذه النصوص غير مُدرَجة في تقرير Lighthouse.

كيفية جعل أدوات معالجة الأحداث سلبية لتحسين أداء التمرير

أضِف علامة passive إلى كل مستمع أحداث رصده Lighthouse.

إذا كنت لا تتيح سوى المتصفحات التي تتيح استخدام أدوات معالجة الأحداث السلبية، ما عليك سوى إضافة العلامة. على سبيل المثال:

document.addEventListener('touchstart', onTouchStart, {passive: true});

إذا كنت تريد إتاحة استخدام المتصفحات القديمة التي لا تتوافق مع أدوات معالجة الأحداث السلبية، عليك استخدام ميزة رصد الميزات أو polyfill. اطّلِع على القسم Feature Detection (اكتشاف الميزات) من مستند الشرح Passive event listeners (أدوات معالجة الأحداث السلبية) الذي يتبع مبادرة Web Input Compatibility Group (WICG) للحصول على مزيد من المعلومات.

الموارد