HTML / JS / CSS متساوي القياس الشبكة مع شبه شفافة من خلال النقر البلاط

StackOverflow https://stackoverflow.com/questions/2259651

سؤال

وأنا أحاول أن إنشاء صفحة ويب التطبيق / لعبة يستخدم جنبا على وجهة نظر 'متساوي القياس "والبلاط شفافة. يمكنني عرضها طيب (ولكن ليست كبيرة) باستخدام صيغة PHP أن مجرد تضع كل شعبة (كل البلاط)، والموقف: المطلق وتعيين أعلى والمعلمات اليسرى. والمشكلة هي كيف يمكنني التقاط النقرات على البلاط والسماح البلاط مع بت شفافة من خلال النقر على البلاط تحتها.

ومثال على مشكلتي هي في HTTP: //stuff.adammw.homeip صافي / أخرى / اناث / farmville_2.html

هل كانت مفيدة؟

المحلول

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

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

إذا كنت حقا بحاجة الى اختبار ضربة ضد أقنعة الصورة، يمكنك:

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

ب. استخراج بيانات الصورة لاختبار باستخدام <canvas> وgetImageData. وعند هذه النقطة قد تفكر في استخدام قماش لتقديم جدا، بالنظر إلى أن سيكون لديك بالفعل فقدت مستخدمي IE.

نصائح أخرى

وتحتاج إلى استخدام التحويلات CSS3، أو مصفوفة تحويل في IE.

والنظرات تركيب شيء مثل هذا:

-webkit-transform: skew(0deg, -30deg) scale(1, 1.16);
-moz-transform: skew(0deg, -30deg) scale(1, 1.16);

وقبل بضعة أمثلة جيدة:

http://www.fofronline.com/experiments/cube/index.html

HTTP: //www.useragentman.com/blog/2010/03/09/cross-browser-css-transforms-even-in-ie/

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

وعلى خلاف ذلك، وأنا أتفق مع bobince. كنت نهج كنت ربما لن تعمل بسهولة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top