2013-04-20 11 views
6

私はこれについて数十のチュートリアルを見てきました。私が望むのは、自分のHTML5キャンバス要素を全画面表示にすることです(全画面表示、全体モニタ表示)。ここでHTML5キャンバスを全画面表示にするにはどうすればよいですか?

は私のHTMLです:

<p><canvas id="screen" width="800" height="500" 
    style="background: #FFFFFF; border: 5px solid black;" role="img"> 
     Your browser does not support the canvas element. 
</canvas></p> 

<p><a href="javascript:goFullScreen();">Go Fullscreen</a></p> 

は、ここで(独自の.jsファイルに)私のJavascriptです:

function goFullScreen(){ 
    var canvas = document.getElementById("screen"); 
    if(canvas.requestFullScreen) 
     canvas.requestFullScreen(); 
    else if(canvas.webkitRequestFullScreen) 
     canvas.webkitRequestFullScreen(); 
    else if(canvas.mozRequestFullScreen) 
     canvas.mozRequestFullScreen(); 
} 

私は機能をテストしました。それは呼び出され、3つのif(つまり、私はFirefoxを使用しているので、mozRequestFullScreen)が呼び出されます。私のブラウザは、テストしたすべてのデモでそれを開きますが、自分のコードでは開きません。

欠けている変数は何ですか?私は文字通りこれを言及するすべてのリンクをグーグルで見つけたに違いありません。ありがとう。

+0

自分のコードとは何が違うのですか?あなたのキャンバスは異なる「id」を持っていますか? 'if'ステートメントの1つが入力されていますか? – Ian

答えて

9

さて、問題が見つかりました。これは動作しません:

<p><button onclick="goFullScreen();">Go Fullscreen</button></p> 

うん... 3時間後:

<p><a href="javascript:goFullScreen();">Go Fullscreen</a></p> 

これは動作しません。

+0

あなたの最初のものは*動作するはずですが、推奨/推奨されていません – Ian

+0

うわー。これは面白い。 'javascript:something()'は、関数をどのように定義するかによって、動作が異なります:http://jsfiddle.net/WntTv/ –

+0

'function something(){}'として定義されている場合、ReferenceErrorを取得します。しかし、 'something = function(){}'と定義されている場合、hrefハンドラはそれを見ることができます。 –

関連する問題