我需要知道當用戶通過新的Fullscreen API進入全屏模式時觸發哪個(DOM)事件。我試過例如這個片段,但它不火:全屏API:哪些事件被觸發?
jQuery('body').on('fullScreenChange', function() { alert("Fired!"); });
我需要知道當用戶通過新的Fullscreen API進入全屏模式時觸發哪個(DOM)事件。我試過例如這個片段,但它不火:全屏API:哪些事件被觸發?
jQuery('body').on('fullScreenChange', function() { alert("Fired!"); });
您的鏈接shows the answer ...
當成功地從事全屏模式,包括全屏幕元素的文檔收到
fullscreenchange
事件。退出全屏模式後,文檔將再次收到fullscreenchange
事件。請注意,fullscreenchange
事件本身不提供有關文檔是進入還是退出全屏模式的任何信息,但如果文檔的非空值爲fullScreenElement
,則說明您處於全屏模式。
有no fullscreenChange event in native jQuery。但也有一些這使您可以訪問事件的第三方插件:
正如你可以看到他們的代碼有沒有乾淨的API訪問這種類型的事件。
我所用:
$(document).on('webkitfullscreenchange mozfullscreenchange fullscreenchange MSFullscreenChange', fn);
它激發了Safari瀏覽器,Chrome瀏覽器和Firefox(沒有測試等)。 webkit和moz之間的結果上下文似乎存在細微的差異,因此元素的高度和寬度是不同的。但事件發生,這是你的問題。
哦。並且注意使用alert('fs')
進行全屏測試。它經常干擾屏幕更換。
很酷的解決方案。 :-) – powtac 2012-05-10 15:29:14
re'on'vs'bind'。我保留了兩個,但是在編輯中失去了原來的糾正編輯的暱稱。抱歉。 – 2013-03-28 14:33:07
在iframe中使用Vimeo時,webkitfullscreenchange不會在Safari中爲我啓動。它在鉻中工作。 – 2014-06-10 18:48:39
哪個瀏覽器,哪個版本,哪個OS?請參閱https://developer.mozilla.org/en/DOM/Using_full-screen_mode#AutoCompatibilityTable您是否使用最新的jQuery? – powtac 2012-03-08 16:54:44