2012-08-29 50 views
1

目前我檢測WebGL是否可用於創建畫布並嘗試獲取"webgl""experimental-webgl"的上下文。如果兩者都返回null,WebGL將被禁用。現在的問題是,當用戶安裝了IEWebGL時,應用程序本身工作正常,但getContext的返回值都爲空,所以可用性檢查返回false。當我訪問IEWebGL網站上的教程時(http://iewebgl.com/Developer.aspx#CreatingTutorial),我可以看到他們正在像我這樣做。我錯過了什麼嗎? 一些代碼:如何在使用IEWebGL時檢測WebGL是否可用?

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; 

回答

3

不創建在IEWebGL canvas元素,你使用一個對象,而不是elment。嘗試用此替換您的畫布元素,看看它是否工作:

<object type="application/x-webgl" id="canvas"></object> 
+0

謝謝!這與預期一致。 –

相關問題