Youtube在纵向视图上自动退出全屏,但在横向视图上工作正常

时间:2017-06-09 10:41:33

标签: youtube youtube-api

每当我在移动设备上使用纵向模式点击我的YouTube屏幕嵌入视频的全屏时,它会移至横向全屏模式并返回原始位置。

我已使用iframe API实现了它。 (此处的内容将动态加载)

<div class="card-media-wrap">
   <div style="position: absolute; top: 0px; background-image: url(&quot;http://localhost/hellou_clone/thehooknew/wp-content/uploads/2017/05/islafisher-baroncohen.jpg&quot;);"></div>
<a tabindex="0">
   <img src="loading_ring.svg" width="100%" id="load-hilary-122014" class="loading_ring" style="display: none;">
   <span class="play_button_span" id="play_button-hilary-122014" style="display: block;"></span> 8
</a>
<iframe id="hilary-122014" src="https://www.youtube.com/embed/9IL9Omfh0hU?&amp;rel=0&amp;enablejsapi=1" style="background-size: cover;margin: 0; opacity: 0;" frameborder="0" allowfullscreen="allowfullscreen" mozallowfullscreen="mozallowfullscreen" msallowfullscreen="msallowfullscreen" oallowfullscreen="oallowfullscreen" webkitallowfullscreen="webkitallowfullscreen"></iframe>
</div>

1 个答案:

答案 0 :(得分:0)

codepen尝试此代码。全屏适用于纵向模式,不会自动退出。

// init player
function onYouTubeIframeAPIReady() {
  player = new YT.Player('player', {
    height: '200',
    width: '300',
    videoId: 'dQw4w9WgXcQ',
    events: {
      'onReady': onPlayerReady
    }
  });
}

// when ready, wait for clicks
function onPlayerReady(event) {
  var player = event.target;
  iframe = $('#player');
  setupListener(); 
}

function setupListener (){
$('button').addEventListener('click', playFullscreen);
}

function playFullscreen (){
  player.playVideo();//won't work on mobile

  var requestFullScreen = iframe.requestFullScreen || iframe.mozRequestFullScreen || iframe.webkitRequestFullScreen;
  if (requestFullScreen) {
    requestFullScreen.bind(iframe)();
  }
}