我现在处于一种情况,我需要一些复杂的代码与 Kinetic.js 和一个画布元素一起在 IE8 上工作。
Kinetic.js 官方没有支持 IE8 的计划。
我尝试使用webshims lib,但 Kinetic.js 在以下代码中失败:
Kinetic.Canvas = function(width, height) {
this.element = document.createElement('canvas');
this.context = this.element.getContext('2d'); //<-- Error here
// set dimensions
this.element.width = width;
this.element.height = height;
};
错误是“对象不支持属性或方法'getContext'”。这对我来说很有意义,因为我不希望 IE8 文档创建的元素画布实现画布元素的方法,但如果<canvas>
元素已经创建,webshims 就会播放并且您可以使用这些方法。但是,强制 Kinetic.js 使用单个画布元素会破坏它的一些功能(因为它会动态创建画布对象)。
为了实现这一目标,我有哪些选择?