首页 > 解决方案 > 如何使用 playinline 在 iOS 上“伪造”全屏模式?

问题描述

大多数 Web 开发人员都知道,iOS 上的 Safari 中缺乏对全屏 api 的支持令人讨厌。然而,大多数流行的视频网站,如 YouTube 和 Vimeo,都有一种伪装的方法,它允许用户在内联播放视频(使用playsinline我假设的属性)和在原生 iOS 播放器中播放视频(比如视频不播放时)之间切换使用playsinline)。

我做了一个简单的脚本,我认为它可以做到这一点,但它不能可靠地工作,我相信有更好的方法来实现它。它是这样的:

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

    function toggleFullScreen() {
    video.pause();
    video.hasAttribute('playsinline') ? video.removeAttribute('playsinline') : video.setAttribute('playsinline', '');
    video.play();
  }

我的问题是:有人知道这些网站是如何做到的吗?还有比切换 playinline 更好的方法吗?

标签: javascriptiossafarifullscreenwebkitrequestfullscreen

解决方案


推荐阅读