全屏API:触发了哪些事件?
我需要知道当用户通过新的Fullscreen API进入全屏模式时会触发哪些(DOM)事件。 我试过这个代码片段,但它没有触发:
jQuery('body').on('fullScreenChange', function() { alert("Fired!"); });
您的链接显示答案 …
成功启用全屏模式后,包含全屏元素的文档将收到
fullscreenchange
事件。 退出全屏模式时,文档再次收到fullscreenchange
事件。 请注意,fullscreenchange
事件本身不提供有关文档是进入还是退出全屏模式的任何信息,但如果文档具有非nullfullScreenElement
,则表示您处于全屏模式。
我用的是:
$(document).on('webkitfullscreenchange mozfullscreenchange fullscreenchange MSFullscreenChange', fn);
它适用于Safari,Chrome和Firefox(尚未测试其他人)。 webkit和moz之间的结果上下文似乎存在细微差别,元素高度和宽度不同。 但事件发生了,这是你的问题。
哦。 并注意使用全屏测试alert('fs')
。 它经常干扰屏幕变化。
原生jQuery中没有fullscreenChange事件 。 但是有几个第三方插件可以让您访问该事件:
- http://johndyer.name/native-fullscreen-javascript-api-plus-jquery-plugin/
- https://github.com/ruidlopes/jquery-fullscreen/blob/master/jquery.fullscreen.js
- https://github.com/hdragomir/jQuery-Fullscreen-Event
- https://github.com/ruidlopes/jquery-fullscreen
正如您在代码中看到的那样,对此类事件没有干净的API访问权限。