캔버스 요소가 지원되지 않는 경우 <canvas></canvas>
태그 사이의 모든 콘텐츠가 표시됩니다. 그래서 당신은 시도 할 수 있습니다 :
<canvas>
<script>
document.getElementById('element').style.backgroundColor = 'red';
</script>
</canvas>
그러나 슬프게도
이 작동하지 않습니다
<canvas><img src="alt-image-for-old-browsers.png" /></canvas>
마음에 오는 논리적 것은 당신이 <canvas></canvas>
태그 사이에 실행할 자바 스크립트를 배치하는 것입니다. Canvas API를 지원하는 브라우저조차도 스크립트를 실행할 것입니다.
그래서 아마도 당신이 프로그래밍 방식으로 브라우저가 캔버스 API를 지원하는지 확인하기 위해 할 수있는 최선의 것은 모두 <canvas></canvas>
요소에 사용할 수있는 getContext
방법을 확인하는 것입니다 : 그래서에 관해서는 더미 캔버스 (생성
function supportsCanvasAPI() {
var canvas = document.createElement('canvas');
if (window.G_vmlCanvasManager) { // IE ExplorerCanvas lib included?
G_vmlCanvasManager.initElement(canvas);
}
return 'getContext' in canvas
}
이미 DOM에서 하나에 대한 참조를 잡는 것에 대해 걱정하지 않아야 함) 요소에 getContext
속성이 있는지 확인합니다. 또한 ExplorerCanvas has been included for IE인지 확인합니다. API의 어떤 기능이 지원되는지 정확히 알려주지는 못합니다 (표준 모양, 경로 등).
기능 감지 HTML5 기능 (예 : 캔버스)에 대한 도움말은 here입니다.
을 아무데도 사양으로는'HTMLCanvasElement'하는 액세스 할 수 있어야합니다 말한다. document.createElement ('canvas')'에서''getContext '를 체크하는 것이 가장 좋습니다. –
사실 그것은 W3 DOM 사양에 있습니다. 여기를 읽으십시오 : http://dev.w3.org/html5/html-author/#the-canvas-element – Matt