目前,我检测WebGL是否可用于创建画布并尝试获取"webgl"
和"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;
答案 0 :(得分:3)
您不能在IEWebGL中创建canvas元素,而是使用对象元素。尝试用此替换canvas元素,看看它是否有效:
<object type="application/x-webgl" id="canvas"></object>