# صمّم إدخال اللمس وفق هدف واضح

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

- URL: https://oneshotgems.ai/ar/topics/touch-controls-for-web-games
- الفئة: لمطوري الألعاب
- النوع: دليل
- آخر تحديث: 5 أكتوبر 2026

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

## حدّد الإيماءة والحد الفاصل مع المتصفح

استخدم Pointer Events عندما يناسب آلية اللعب مسار إدخال واحد للفأرة والقلم واللمس. تتبّع المؤشر النشط من pointerdown مرورًا بالحركة وحتى الإفلات، وتجاهل المؤشرات الأخرى ما لم يكن اللمس المتعدد مقصودًا. عيّن touch-action على سطح اللعب للحفاظ على التمرير أو التكبير بضمّ الإصبعين في المتصفح حين يحتاج اللاعب إليهما. قد يؤدي تطبيق touch-action: none على السطح كله إلى منع تكبير المتصفح.

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

## تعامل مع الإلغاء بوصفه نتيجة طبيعية

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

اختبر النقر والسحب البطيء وإيماءة تبدأ من الحافة ومحاولة تمرير الصفحة في المتصفح. تأكد من وجود تغذية راجعة واضحة لكل حركة ومن أن مغادرة سطح اللعب لا تُبقي عنصر تحكم عالقًا. يشرح دليل Pointer Events من MDN نموذج المؤشر المشترك وسلوك touch-action.

## أسئلة

**هل ينبغي للعبة تعطيل جميع إيماءات اللمس في المتصفح؟** فقط عندما يحتاج سطح اللعب فعلًا إلى التحكم في تلك الإيماءات. أبقِ التمرير أو التكبير في المتصفح متاحًا متى أمكن، واحصر قواعد touch-action في المنطقة التي يتطلب تفاعلها ذلك.

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

## اتبع فضولك

- [استخدم أحداث المؤشر لإدخال لعبة المتصفح](https://oneshotgems.ai/ar/topics/pointer-events-for-games): نموذج الماوس والقلم واللمس من خلال أحداث المؤشر، مع الحفاظ على الالتقاط وهوية الجهاز وسلوك التوافق في حلقة اللعبة.
- [حجم أهداف اللمس لألعاب المتصفح](https://oneshotgems.ai/ar/topics/game-touch-targets): اجعل عناصر التحكم في اللعبة أسهل في الوصول إليها عن طريق فصل العمل الفني المرئي عن الحدود التفاعلية والتحقق من الحجم والتباعد والتداخل على الأجهزة التي تعمل باللمس.

## للمزيد من القراءة

- [MDN: أحداث المؤشر](https://developer.mozilla.org/en-US/docs/Web/API/Pointer_events)
- [MDN: touch-action](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/touch-action)

---
الصفحة الأساسية: https://oneshotgems.ai/ar/topics/touch-controls-for-web-games
