2013-10-21 60 views
0

我正在用Impact JS進行遊戲,它使用畫布進行渲染。在遊戲中,我有一個按鈕,顯示一個隱藏的div包含流播放器,並播放視頻。在那個隱藏的div也是一個關閉div並停止視頻的按鈕......這一切都很好。問題是,一旦視頻關閉,我必須點擊畫布才能重新獲得焦點。因此,視頻下的按鈕現在必須點擊兩次才能使其正常工作......不行。 我確定它不是特定於流水遊戲。我可以用黑色顯示一個隱藏的div,並在5秒內將其隱藏,畫布仍然失去焦點。 任何人看到這個?這是一個showstopper現在..真的需要得到它的工作。HTML5 - 畫布失去焦點?

+0

OK,我去,並添加一個單擊處理程序的canvas標籤,我發現帆布實際上沒有失去焦點 - 因爲我當我點擊畫布時,即使按鈕沒有回覆,也會得到「畫布下降」的痕跡。 我爲此使用了Impact JS遊戲引擎,看起來這就是實際上失去焦點 - 雖然它仍然運行良好,因爲我的翻滾繼續工作。 如果有人在意快速瀏覽一下,我將它放在中轉站點上。 http://design.gmrstage.com/dave/chiltest/default.html# 真的很感謝這裏的任何幫助。 –

+0

PS - 如果你決定看 - 點擊主頁上的箭頭進入主菜單。點擊任意按鈕 - 視頻將打開 - 點擊菜單關閉視頻。按鈕現在需要兩次點擊才能工作。 –

回答

0

我看到您已經將tabindex應用於您的畫布。

好,這是需要將焦點設置在畫布上。

現在給在影片結束後的畫布重點,做到這一點:

// get a reference to the canvas element 

var canvas=document.getElementById('canvas'); 

// set focus to the canvas when the video ends 

canvas.focus(). 
+0

這不起作用。那麼......它可能,但正如我後面解釋的,畫布似乎在保持焦點。我在畫布標籤中添加了點擊處理程序,並且該功能被調用 - 即使遊戲中的按鈕沒有響應 - 直到再次點擊。 –

+0

PS - 如果再看一次,視頻關閉後會看到「畫布向下」追蹤到控制檯,即使該按鈕在您再次單擊時沒有響應。 –