2009-08-26 9 views
74

मैं कुछ वृत्तखण्ड और वृत्त आकर्षित करने के लिए HTML5 कैनवास तत्वों का उपयोग करने के लिए कोशिश कर रहा हूँ - इस एफएफ में पूरी तरह से काम करता है लेकिन IE8 यह समर्थन करने के लिए प्रतीत नहीं होता।मैं IE में HTML5 कैनवास तत्वों का उपयोग कैसे कर सकते हैं?

अब, वहाँ जावास्क्रिप्ट पुस्तकालयों जो IE8 कैनवास के साथ अच्छी तरह से काम करने के लिए लग रहे हैं मौजूद हैं। An example can be found here

मैं अपनी पूरी स्रोत पढ़ा है लेकिन मैं नहीं समझ सकता कि वे किस तरह IE8 के साथ कैनवास काम कर रहे हैं। किसी प्रयोग विधि पर कुछ प्रकाश फेंक सकते हैं?

उत्तर

94

पेज excanvas उपयोग कर रहा है - एक जे एस पुस्तकालय कि IE के VML रेंडरर का उपयोग कर कैनवास तत्व simulates।

ध्यान दें कि इंटरनेट एक्सप्लोरर 9, the canvas tag is supported natively में! विवरण के लिए MSDN docs देखें ...

+0

ठीक है, धन्यवाद :) –

+35

आईई के लिए कैनवास के Google के कार्यान्वयन के लिए +1। अपने ब्राउज़र में सीमाओं को तय करने के लिए तृतीय पक्षों को देखने में दुख की बात है :) –

4

आप आईई के लिए जारी की गई क्रोम फ्रेम प्लगइन का उपयोग कर सकते हैं, लेकिन इसकी आवश्यकता है कि एचटीएमएल 5 वेबसाइट में विशेष मेटा टैग शामिल है जो प्लगइन को सक्षम बनाता है।

http://code.google.com/chrome/chromeframe/

क्रोम फ्रेम कैनवास (excanvas.js) का अन्वेषण उपयोग करने के लिए लगता है।

2

वर्तमान में, ExplorerCanvas IE6, 7 के लिए एचटीएमएल 5 कैनवास का अनुकरण करने की ही एकमात्र विकल्प है, और 8. आप भी अपने प्रदर्शन है, जो बहुत गरीब है के बारे में सही कर रहे हैं।

मैं एक कण simulatior कि IE में गूगल क्रोम, सफारी, और Firefox में सच एचटीएमएल 5 कैनवास से निपटने के बीच का अंतर, बनाम ExplorerCanvas मानक पाया। परिणाम है कि प्रमुख ब्राउज़रों कि कैनवस टैग का समर्थन करते हैं के बारे में 20 से 30 बार ExplorerCanvas साथ IE में नकल करते एचटीएमएल 5 की तुलना में तेजी से चलाने के दिखा।

मुझे संदेह है कि कोई भी विकल्प बनाने के प्रयास से गुज़र जाएगा क्योंकि 1) excanvas.js को जितना साफ हो जाता है उतना ही कोड किया जाता है और 2) जब IE9 जारी किया जाता है तो सभी प्रमुख ब्राउज़र अंततः कैनवास ऑब्जेक्ट का समर्थन करेंगे। उम्मीद है, हम एक साल

एरिक भीतर IE9 मिलेगा @ www.webkrunk.com

+0

क्या कोई मुझे बता सकता है कि 'धीमी' क्या है? क्या आपका मतलब है कि ब्राउज़र अक्सर उत्तरदायी नहीं होता है, कुछ हद तक लटकने जैसा होता है, या यह है कि पृष्ठों को लोड करने में लंबा समय लगता है क्योंकि प्रत्येक पृष्ठ को 'excanvas.js' फ़ाइल लोड करना पड़ता है जो कि भारी हेवीवेट है (है ना?)? – SexyBeast

+0

excanvas.js बहुत बड़ा नहीं है। यह समस्या कैनवास-आधारित एनीमेशन में संभावित अधिकतम फ़्रेमेट के बारे में अधिक है। – nullability

8

आप fxCanvas कोशिश कर सकते हैं: https://code.google.com/p/fxcanvas/

यह फ़्लैश शिम भीतर लगभग सभी कैनवास एपीआई लागू करता है।

+1

यह एक्वांस के घृणास्पद प्रदर्शन के कारण मेरा वोट प्राप्त करता है। लाइब्रेरी में कुछ समस्याएं हैं, लेकिन मेरे असली दुनिया के परीक्षणों में यह प्रदर्शन और स्थिरता दोनों के मामले में फ़्लैशकैनवास से आगे आया। – Aaronaught

+0

क्या इसका कोई नया संस्करण है? लिंक आईई 9 को छोड़कर – Colbs

+0

https://code.google.com/p/fxcanvas/ IE 5.5+ टूटा हुआ है। – Stefan

0

मैंने अभी flashcanvas का उपयोग किया है, और मुझे यह काम मिल गया। आप समस्याओं का सामना करते हैं, सिर्फ चेतावनियां और whatnot को पढ़ने के लिए सुनिश्चित करें। विशेष रूप से, अगर आप कैनवस तत्वों को गतिशील बनाने के लिए, आप उन्हें स्पष्ट रूप से प्रारंभ करने की आवश्यकता:

if (typeof FlashCanvas != "undefined") { 
    FlashCanvas.initElement(canvas); 
} 
2

आप IE8 उपयोग करने की आवश्यकता है, तो आप वेक्टर ग्राफिक्स के लिए इस JavaScript लाइब्रेरी की कोशिश कर सकते हैं। यह एक ही समय में आईई 8 की "कैनवास" और "एसवीजी" असंगतताओं को हल करने जैसा है।

Raphaël

मैं सिर्फ एक तेजी से उदाहरण में यह कोशिश की है और इसे सही ढंग से काम करता है। मुझे नहीं पता कि स्रोत कोड कितना सुगम है लेकिन मुझे उम्मीद है कि यह आपकी मदद करेगा। जैसा कि उन्होंने अपनी साइट में कहा था, पुस्तकालय बहुत पुराने खोजकर्ताओं के साथ संगत है।

राफेल वर्तमान में फ़ायरफ़ॉक्स 3.0+, सफारी 3.0+, क्रोम 5.0+, ओपेरा 9.5+ और इंटरनेट एक्सप्लोरर 6.0+ का समर्थन करता है।

संबंधित मुद्दे