cross-browser - شرح - online web browser




عرض الرسومات المتجهة في المتصفح (6)

IE يدعم VML ، ولكن لا شيء آخر وهو قبيح. ادعت شركة Microsoft أنها قد أسقطتها (مع XAML الجديدة وجميعها) ولكنها لا تزال جزءًا من تنسيق Office XML (إنها الطريقة التي يدعم بها Excel .xlsx التعليقات ، بشكل غريب بما فيه الكفاية).

FX وتحميل المزيد من الدعم عنصر قماش جديد. العديد من دعم SVG ، ولكن نظرا لعمل MS تقوم به على Silverlight لا أستطيع أن أرى IE يدعم SVG في أي وقت قريب.

يفترض أن توفر Microsoft المكونات الإضافية Silverlight لعدم وجود أنظمة تشغيل MS.

لقد كنت تستخدم Flex - إنها جيدة على الرغم من استخدام Eclipse. لا تحتاج إلى شراء مكونات خادم Adobe باهظة الثمن لاستخدام Flex - يمكن أن تستهلك خدمات SOAP.

أدوات التطوير لـ Flex ميسورة التكلفة ، وكل شخص لديه فلاش.

أنا بحاجة إلى عرض بعض التفاعلية (إرفاق مع مستمعي DOM إلخ ومعالجة الأحداث) الرسومات المتجهة في موقع ويب أنا أعمل على. هناك توصية W3C لـ SVG على الرغم من أن هذا التنسيق لا يزال غير معترف به من قبل دعم Internet Explorer الذي يعد أمرًا ضروريًا (لموقع ويب عام). IE يعالج VML على الرغم من وجود مكتبات javascript التي تقوم بعمل رسم تشبه اللوحة القماشية اعتمادا على متصفح (SVG مقابل VML) - excanvas ، GFX من Dojo Toolkit وأكثر من ذلك. سيكون ذلك جميلاً ومقبولًا ، على الرغم من أن أياً منها لا يمكنه عرض صورة SVG من الترميز المعطى.

وبالتالي فإن السؤال يتكون في الواقع من عدة أجزاء:

  1. هل توجد أي مكتبات جافا سكريبت مستعرضة للمتصفحات تعرض رسومات متجهة من ترميز معين (وليس SVG إلزامي) وتوفر التوفر لإرفاقه بأحداث DOM؟
  2. إذا لم يكن هناك ، أي من التقنيات المضمنة في المتصفح الأكثر شعبية ستكون الأنسب للقيام بمثل هذه المهمة؟ يمكنني الاختيار من Flex / Flash ، برنامج Java. Silverlight ليس خيارًا بسبب قفل Windows.

[ تحرير ] شكرا لكم جميعا على تعليقاتكم / اقتراحاتكم. فيما يلي بعض الملاحظات / الاستنتاجات العشوائية الخاصة بي في هذا الشأن:

  • مستوى التفاعل الذي أحتاج إليه هو القدرة على اكتشاف أحداث DOM على صورة المتجه التي يتم عرضها - تمرير الماوس ، والماوس ، والنقر إلخ - والقدرة على التفاعل عليها مثل تغيير لون الخلفية ، وعرض الحوار إلخ.
  • فكرة الالتصاق بتنسيق SVG هي جيدة تمامًا كما هو الحال في العديد من المتصفحات باستثناء الشائعة - IE. بعد بعض التجارب مع عرض SVG الديناميكية أدركت أن IE الإصدار 7 الأكثر إشكالية. هناك الكثير من المتاعب بسبب عدم توافق المتصفح.
  • تبدو الكيك إطارًا رائعًا لجافا سكريبت ، على الرغم من أنني لم أتمكن من الحصول على الأمثلة التي تعمل على IE7.
  • Java Applets - لقد أحببت هذه الفكرة أكثر من أي شيء على الرغم من أنني أستطيع استخدام مكتبة Apache Batik ، وهو عارض SVG عالي الجودة. ومع ذلك ، Batik هي مكتبة كبيرة جدًا ولا يمكنني تحمل نشر برنامج صغير يزن عدة ميغابايت.
  • قررت التمسك بخيار فليكس. لقد وجدت مكتبة الرسومات ناقلات لطيفة Degrafa . ويستخدم تنسيق الترميز الخاص به ومع ذلك يتعرف على تدوين مسار SVG ، لذا سيكون من السهل جدًا في حالتي تحويل ملفات SVG الخاصة بي باستخدام XSLT أو تحليلها فقط.

[ تحرير 2 ] ظهر بعض التعليقات. أود توضيح أنه من خلال "Windows lock-in" أعني الحالة التي تعمل فيها Silverlight عادة على Windows ، بشكل أكثر تحديدًا ، IE. أشك في أنه حل مقبول (مثل Flash أو Java Applet ، على سبيل المثال) على أنظمة أخرى. نعم ، ليس لدي أي شك في أن الشخص قادر على إطلاق تطبيق Silverlight على أي نظام على الرغم من أنني أخشى أن يكون الكثير من الجهد للمستخدم العادي.

Akira: هل لديك أي مشاكل مع هؤلاء "SVG العارضون" على IE7؟ أحصل على أخطاء Javascript طوال الوقت.


ألق نظرة على مكتبة رافاييل جافا سكريبت . إنها أيام مبكرة ولكنها تبدو واعدة جدًا.

أتذكر خريطة الطريق IE التي تم إدراج دعم SVG لها في IE7.2.

يعتمد على مدى التفاعلية التي تريدها؟


اذهب إلى SVG - وأخبر المستخدمين فقط للحصول على ADOBE SVG plug for IE.

شاهد هذا الموقع الممتاز - وهو موقع حكومة المملكة المتحدة (خدمة عامة)

ELGIN


لا أعتقد أن SVG هو خيار جيد للمستقبل. من Wikipedia :

  • "تم إنتاج البرنامج المساعد IE الأكثر شيوعًا من قبل Adobe. على الرغم من ذلك ، تخطط Adobe لسحب هذا المنتج في بداية عام 2009"
  • "... Internet Explorer الذي لن يدعم SVG أيضًا في الإصدار القادم IE8"
  • "... كل الدعم غير المكتمل لـ SVG 1.1 ..."
  • "تم عرض المكون الإضافي Corel SVG Viewer من Corel. لقد توقف تطوره."

من بين جميع الاحتمالات التي تقوم بإدراجها ، فإن الشخص الوحيد الذي لا يعتبر إساءة استخدام رهيبة لتكنولوجيا موجودة (Javascript) ، مدعوم بالكاد (SVG ، عنصر Canvas) أو الكثير من العمل (Java) هو Flash. تم تصميمه كحزمة جرافيك متجه ومتوافق مع المزيد من المتصفحات من SVG وعلامة لوحة الرسم.

السبب الوحيد الذي يجعلني لا أختار Flash عبر جميع الخيارات الأخرى هو إذا كنت تستهدف متصفحات الجوال أو لا تملك ميزانية حزمة Flash.


هل يمكنك توضيح المقصود بعبارة "Windows lock-in" مع Silverlight؟ يتم تشغيله على Windows و MacIntel ، وتعمل أجزاء المتجه على ما يرام على Linux باستخدام البرنامج الإضافي Moonlight.

هل ألقيت بنقص دعم أميغا؟