IE и динамическая вставка canvas
Подготовил: Евгений Рыжков
Дата публикации: 21.11.2011
Проблема
Браузеры IE6-8 нативно не поддерживают HTML5 элемент canvas. Для его эмуляции можно использовать библиотеку excanas. При динамической вставке canvas в IE может возникнуть ошибка "неизвестный объект" при попытке получения контекста.
Решение
Для старых IE перед получением контекста вызвать функцию G_vmlCanvasManager.initElement([canvas element]). В коде это может выглядеть примерно так:
var canvas = document.createElement("canvas"); // создаем элемент canvas
$("#parent").prepend(canvas); // вставляем canvas куда нужно. например, с помощью jQuery
if($.browser.msie && $.browser.version<9) { G_vmlCanvasManager.initElement(canvas); } // костыль для IE
var ctx = canvas.getContext("2d"); // инициализируем контекст
Материалы
Показать комментарии
