أريد فئة JavaScript يمكنها الحفاظ على عنصر واجهة مستخدم قائم على القماش يمكنك سحبه بالماوس لتحريك القليل من الإبهام أو أي شيء تسميه. سوف تقوم بتمريرها بحجم القطعة بحجم الإبهام والموضع الأولي للإبهام. سيتم مسح اللوحة القماشية في كل مرة يتم فيها إعادة رسم الإبهام. سيتم رسم الإبهام كمستطيل شفاف، وستكون اللوحة القماشية نفسها تحتوي ببساطة على حدود بحجم 1 بكسل لإظهار مكانها. يوجد رد اتصال عند بدء التشغيل أو التحرك أو التحرير. في رد الاتصال الذي يمكنك تقييد حركته عن طريق ضبط القيم المرسلة. ويمكنك الرسم على اللوحة القماشية وكذلك الإبهام. هناك أيضًا طريقة getPosition. جميع أزواج الأبعاد، مثل الارتفاع والعرض وx وy، عبارة عن مصفوفتين عضويتين. إذا حدث هبوط الماوس داخل حدود الإبهام، فلن يقفز الإبهام ليتم توسيطه في هذا الموضع، ولكن يجب أن تكون الحركة نسبية. إذا كان الماوس لأسفل خارج الإبهام، فسوف يقفز ليتم تمركزه في هذا الموضع فورًا ثم يتحرك من هناك. تأكد أيضًا من أنه إذا تم النقر بالماوس على عنصر واجهة المستخدم، ولكن تم سحبه بعيدًا خارج عنصر واجهة المستخدم، فسوف يستمر في الحصول على حدث النقل بدلاً من إيقافه حتى يعود إلى أعلى عنصر واجهة المستخدم.
{"evolved_from": null, "kind": "human", "source": "ewof/sharegpt-instruct-unfiltered-deduped"}