Firefox 3.1 beta 1 で display: none な iframe 内の canvas 2d context の font プロパティに代入するとエラーが出る
<!DOCTYPE html> <meta charset=utf-8> <title>Firefox 3.1 beta 1 で display: none な iframe 内の canvas 2d context の font プロパティに代入するとエラーが出る</title> <script type="text/javascript"> window.addEventListener('load', function() { var iframe = document.createElement('iframe'); iframe.setAttribute('width', 640); iframe.setAttribute('height', 480); iframe.style.border = 'none'; iframe.style.display = 'none'; document.body.appendChild(iframe); var win = iframe.contentWindow; var doc = win.document; doc.write('<body></body>'); doc.close(); doc.body.style.margin = '0'; doc.documentElement.style.overflow = 'hidden'; var canvas = doc.createElement('canvas'); canvas.width = 640; canvas.height = 480; canvas.getContext('2d').font = '18px monospace'; doc.body.appendChild(canvas); }, false); </script> <h1>Firefox 3.1 beta 1 で display: none な iframe 内の canvas 2d context の font プロパティに代入するとエラーが出る</h1> </html> </html>
エラー: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMCanvasRenderingContext2D.font]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://www.fujidig.com/misc/js/canvas/iframe-canvas-font.html :: anonymous :: line 23" data: no] ソースファイル: http://www.fujidig.com/misc/js/canvas/iframe-canvas-font.html 行: 23
なんで?