我有一个使用HTML 5 canvas的html页面。我使用以下代码创建画布对象。
<canvas id="testCanvas" width="200" height="200">
Canvas Not Supported
</canvas>
这将按预期工作,并在诸如IE 8之类的浏览器中显示文本“ Canvas Not Supported”。但是,与画布相关联的以下JavaScript存在问题。
<script>
var testCanvas = document.getElementById("testCanvas");
var testCanvasContext = testCanvas.getContext("2d");
</script>
上面的代码抛出错误消息,在不支持画布的浏览器中对象不支持此属性或方法。用javascript处理此问题的正确方法是什么?
请不要建议使用excanvas之类的库。
最佳答案
尝试以下内容:
<script>
var testCanvas = document.getElementById("testCanvas");
var testCanvasContext = window.CanvasRenderingContext2D && testCanvas.getContext("2d");
if (testCanvasContext) {
// do stuff
}
</script>