1

目前,我检测 WebGL 是否可用于创建画布并尝试获取"webgl"and的上下文"experimental-webgl"。如果两者都返回null,WebGL 将被禁用。现在的问题是,当用户安装了 IEWebGL 时,应用程序本身工作正常,但是 getContext 的返回 null,所以可用性检查返回 false。当我访问 IEWebGL 网站 (http://iewebgl.com/Developer.aspx#CreatingTutorial) 上的教程时,我可以看到他们的做法和我一模一样。我错过了什么吗?一些代码:

var contextNames = ["webgl", "experimental-webgl"];

var isEnabled = false;
for(var i = 0, length = contextNames.length; i < length; i++)
    if(canvas[0].getContext(contextNames[i]))
        isEnabled = true;
4

1 回答 1

3

您无需在 IEWebGL 中创建画布元素,而是使用对象元素。尝试用这个替换你的画布元素,看看它是否有效:

<object type="application/x-webgl" id="canvas"></object>
于 2012-08-29T07:24:41.453 回答