关于这一点,似乎有很多帖子,普遍的回答是“你不能”,但我不相信它。总有办法吧? ;)
我正在链接到youtube视频。
<iframe id="video" class="video" width="560" height="315"
src="https://www.youtube-nocookie.com/embed/myvideo?
controls=1&autoplay=0&modestbranding=1&showinfo=0&rel=0" frameborder="0"
allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen></iframe>
我们拥有视频和youtube频道,因此我们引用的是自己的内容。在桌面上,此过程很好-我有一个div,当您单击播放图标时会展开,然后有一个函数可以交换src中的自动播放控件:
function playVideo() {
var video = $('.video')[0];
var isPause = video.src.indexOf('autoplay=0') != -1;
video.src = isPause ? video.src.replace('autoplay=0', 'autoplay=1') :
video.src.replace('autoplay=1','autoplay=0');
}
点击播放,div会展开并播放视频。
在移动设备上,div会扩展,并且不会播放视频。我尝试了各种方法来复制对播放按钮的点击,但无济于事。
如果需要的话,很乐意破解,但必须有一种使用JS播放iframe内容的方法。只是要。以下无效:
$('.ytp-large-play-button.ytp-button').click();
而且也不是:
$('.ytp-large-play-button.ytp-button').trigger('click');
我了解我正在尝试访问跨域内容以及与此相关的安全性,但是我仅对潜在的解决方案感兴趣。我最近找到了一种方法,该方法使用后表单到隐藏的iframe阻止表单重定向,同时保持表单中的数据流,因此我很希望。
也希望你们中的一个会说这只是iframe上的简单属性声明:)
有什么好主意吗?