Comment puis-je utiliser l’élément de canvas HTML5 dans Internet Explorer?

J’essaie d’utiliser l’élément de canvas HTML5 pour dessiner des arcs et des cercles – cela fonctionne parfaitement dans FF mais IE8 ne semble pas le supporter.

Maintenant, il existe des bibliothèques Javascript qui semblent faire fonctionner IE8 avec Canvas. Un exemple peut être trouvé ici .

J’ai lu l’intégralité de leur source mais je ne peux pas comprendre comment ils font fonctionner Canvas avec IE8. Quelqu’un peut-il s’il vous plaît jeter un peu de lumière sur la méthode utilisée?

La page utilise excanvas – une bibliothèque JS qui simule l’élément canvas en utilisant le moteur de rendu VML d’IE.

Notez que dans Internet Explorer 9, la balise canvas est prise en charge en mode natif ! Voir les documents MSDN pour plus de détails …

Vous pouvez essayer fxCanvas: https://code.google.com/p/fxcanvas/

Il implémente presque toutes les API Canvas dans Flash Shim.

Vous pouvez utiliser le nouveau plug-in Chrome Frame pour IE, mais le site Web HTML 5 doit inclure la balise meta spéciale qui active le plug-in.

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

Chrome Frame semble utiliser Explorer Canvas (excanvas.js).

Actuellement, ExplorerCanvas est la seule option pour émuler un canevas HTML5 pour IE6, 7 et 8. Vous avez également raison sur ses performances, ce qui est plutôt médiocre.

J’ai trouvé un simulateur de particules qui fait la différence entre la gestion de la canvas HTML5 dans Google Chrome, Safari et Firefox, par rapport à ExplorerCanvas dans IE. Les résultats montrent que les principaux navigateurs prenant en charge la balise canvas sont environ 20 à 30 fois plus rapides que le HTML5 émulé dans IE avec ExplorerCanvas.

Je doute que quiconque passe par l’effort de créer une alternative car 1) excanvas.js est à peu près aussi codé que possible et 2) lorsque IE9 est sorti, tous les principaux navigateurs supporteront finalement l’object canvas. Espérons que nous aurons IE9 dans un an

Eric @ http://www.webkrunk.com

Si vous devez utiliser IE8, vous pouvez essayer cette bibliothèque JavaScript pour les graphiques vectoriels. C’est comme résoudre les incompatibilités “canvas” et “SVG” d’IE8 en même temps.

Raphaël

Je viens de l’essayer dans un exemple rapide et cela fonctionne correctement. Je ne sais pas à quel point le code source est lisible, mais j’espère que cela vous aidera. Comme ils l’ont dit sur son site, la bibliothèque est compatible avec les très anciens explorateurs.

Raphaël supporte actuellement Firefox 3.0+, Safari 3.0+, Chrome 5.0+, Opera 9.5+ et Internet Explorer 6.0+.

J’ai juste utilisé flashcanvas , et j’ai eu ça. Si vous rencontrez des problèmes, assurez-vous simplement de lire les mises en garde et autres. En particulier, si vous créez des éléments de tableau de manière dynamic, vous devez les initialiser explicitement:

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