حدّد الإيماءة والحد الفاصل مع المتصفح
استخدم Pointer Events عندما يناسب آلية اللعب مسار إدخال واحد للفأرة والقلم واللمس. تتبّع المؤشر النشط من pointerdown مرورًا بالحركة وحتى الإفلات، وتجاهل المؤشرات الأخرى ما لم يكن اللمس المتعدد مقصودًا. عيّن touch-action على سطح اللعب للحفاظ على التمرير أو التكبير بضمّ الإصبعين في المتصفح حين يحتاج اللاعب إليهما. قد يؤدي تطبيق touch-action: none على السطح كله إلى منع تكبير المتصفح.
في آلية السحب، أظهر فورًا أن العنصر ممسوك وحدّثه وفق موضع المؤشر. وفي آلية النقر، قرر ما إذا كانت حركة بسيطة تلغي التفعيل واختبر الحد الفاصل على أجهزة لمس فعلية. احصر سياسة الإيماءات في سطح اللعب بدلًا من تطبيقها على الصفحة كلها.
تعامل مع الإلغاء بوصفه نتيجة طبيعية
قد يُلغى المؤشر عندما يتولى المتصفح إيماءة ما، أو تتغير حالة الجهاز، أو يتوقف التفاعل لسبب آخر. عند pointercancel، امسح حالة الضغط كما تفعل بعد إفلات مكتمل؛ وإلا فقد تواصل الشخصية الحركة أو يبدو الزر مضغوطًا باستمرار. إذا التقطت اللعبة المؤشر، فأفرج عن الالتقاط أثناء التنظيف.
اختبر النقر والسحب البطيء وإيماءة تبدأ من الحافة ومحاولة تمرير الصفحة في المتصفح. تأكد من وجود تغذية راجعة واضحة لكل حركة ومن أن مغادرة سطح اللعب لا تُبقي عنصر تحكم عالقًا. يشرح دليل Pointer Events من MDN نموذج المؤشر المشترك وسلوك touch-action.
أسئلة عن عناصر التحكم باللمس لألعاب الويب
هل ينبغي للعبة تعطيل جميع إيماءات اللمس في المتصفح؟
فقط عندما يحتاج سطح اللعب فعلًا إلى التحكم في تلك الإيماءات. أبقِ التمرير أو التكبير في المتصفح متاحًا متى أمكن، واحصر قواعد touch-action في المنطقة التي يتطلب تفاعلها ذلك.
ما الذي ينبغي أن يحدث بعد pointercancel؟
أنه الإجراء الجاري في اللعبة وامسح حالة الضغط أو السحب. الإلغاء نتيجة متوقعة للإدخال، لذا ينبغي أن يكون التنظيف مدروسًا مثل التعامل مع pointerup.
للمزيد من القراءة
هل لاحظت معلومة قديمة؟ الإبلاغ عن تصحيح