我试图嵌入新的iframe版本的YouTube视频,并让它自动播放。
据我所知,没有办法通过修改URL的标志来做到这一点。有办法通过使用JavaScript和API来做到这一点吗?
我试图嵌入新的iframe版本的YouTube视频,并让它自动播放。
据我所知,没有办法通过修改URL的标志来做到这一点。有办法通过使用JavaScript和API来做到这一点吗?
当前回答
是的,您可以根据谷歌的自动播放Iframe策略嵌入带有Iframe标签的自动播放YouTube视频
试试这个方法:
<iframe src="https://www.youtube.com/embed/video-id" frameborder="0" allow="autoplay; fullscreen"></iframe>
虽然这个过程一次只适用于一个视频,但要使用Iframe代码嵌入一组YouTube视频,您需要使用第三方工具,如Taggbox Widget,它与谷歌的API集成,允许用户以YouTube小部件的形式嵌入YouTube视频、使用频道和播放列表url的短片。
此外,您还可以使用生成的Iframe代码轻松地将响应式YouTube小部件嵌入到您的网站上。
<iframe src="https://widget.taggbox.com/unique-id" style="width:100%;height:600px;border:none;"></iframe>
其他回答
为了让mjhm在2018年5月在Chrome 66上工作,我在iframe中添加了allow=autoplay,并在查询字符串中添加了enable_js=1:
<iframe allow=autoplay width="420px" height="345px" src="http://www.youtube.com/embed/oHg5SJYRHA0?autoplay=1&enable_js=1"></iframe>
这适用于Chrome,但不适用于Firefox 3.6(警告:RickRoll视频):
<iframe width="420" height="345" src="http://www.youtube.com/embed/oHg5SJYRHA0?autoplay=1" frameborder="0" allowfullscreen></iframe>
iframe嵌入的JavaScript API是存在的,但是仍然作为一个实验特性发布。
更新:iframe API现在完全支持和“创建YT。播放器对象-示例2”展示了如何在JavaScript中设置“自动播放”。
2018年12月,
寻找一个自动播放,循环,静音youtube视频的反应。
其他答案都不奏效。
我用一个库找到了一个解决方案:react-youtube
class Video extends Component {
_onReady(event) {
// add mute
event.target.mute();
// add autoplay
event.target.playVideo();
}
render() {
const opts = {
width: '100%',
height: '700px',
playerVars: {
// remove video controls
controls: 0,
// remove related video
rel: 0
}
};
return (
<YouTube
videoId="oHg5SJYRHA0"
opts={opts}
// add autoplay
onReady={this._onReady}
// add loop
onEnd={this._onReady}
/>
)
}
}
自2018年4月起,谷歌对自动播放政策进行了一些更改。你不仅需要添加autoplay=1作为查询参数,还需要添加allow='autoplay'作为iframe的属性
所以你必须这样做:
<iframe src="https://www.youtube.com/embed/VIDEO_ID?autoplay=1" allow='autoplay'></iframe>
为那些不知道(过去的我和未来的我)的人提供多个查询提示
如果您只是使用url进行单个查询?autoplay=1工作,如mjhm的答案所示
<iframe src="https://www.youtube.com/embed/oHg5SJYRHA0?autoplay=1"></iframe>
如果你有多个查询还记得第一个以a开头吗?而其他的则以&开头
假设你想关闭相关视频,但启用自动播放…
这是
<iframe src="https://www.youtube.com/embed/oHg5SJYRHA0?rel=0&autoplay=1"></iframe>
这是可行的
<iframe src="https://www.youtube.com/embed/oHg5SJYRHA0?autoplay=1&rel=0"></iframe>
但是这些都没用。
<iframe src="https://www.youtube.com/embed/oHg5SJYRHA0?rel=0?autoplay=1"></iframe>
<iframe src="https://www.youtube.com/embed/oHg5SJYRHA0&autoplay=1&rel=0"></iframe>
例子比较
https://jsfiddle.net/Hastig/p4dpo5y4/
更多信息
有关使用多个查询字符串的更多信息,请阅读下面NextLocal的回复