根据我的研究,对于iPhone / iPad上的视频元素,同时按“完成”和“暂停”会触发“暂停”事件。因此,如果我在按下“完成”按钮时想要启动某些所需的网页行为,我需要收听“暂停”事件。
player = document.getElementById('videoplayer');
player.addEventListener("pause", function() {
//desired "done button" behavior defined here
}, false);
根据原始问题的Arv-ToolTwist's answer,区分“完成”和“暂停”的方法是检查webkitDisplayingFullscreen
布尔值(因为“完成”按钮退出全屏,布尔值将返回false)。
player.addEventListener("pause", function() {
if(!player.webkitDisplayingFullscreen) {
//desired "done button" behavior defined here
}
}, false);
然而,在用户在播放器处于全屏模式时暂停视频然后在视频暂停时按下“完成”的情况下,不启动“期望的完成按钮行为”。
我的研究很少发现这方面的信息,但我的假设是“暂停”事件不是第二次触发,或者是{{1}之前的第二次触发} boolean更改为“false”。无论哪种方式,设备都可以区分“完成”和“暂停”(即使播放器已经暂停),所以我想知道
答案 0 :(得分:15)
这是您要寻找的事件:
player.addEventListener('webkitendfullscreen', onVideoEndsFullScreen, false);
当用户按下“完成”按钮时,此事件确实会触发。 (iPhone / iTouch的)
在这个问题中回答了How to figure out when a HTML5 video player enters the full screen mode on iOS / iPads?
这只是留下了主页按钮事件......似乎没有可靠的事件(参见下面的2篇文章)https://discussions.apple.com/thread/4182660?start=0&tstart=0