amp-youtube
说明
显示 YouTube 视频。
必需脚本
<script async custom-element="amp-youtube" src="https://cdn.ampproject.org/v0/amp-youtube-0.1.js"></script>
用法
显示 YouTube 视频。
使用响应式布局时,示例中的宽度和高度应为 16:9 宽高比视频生成正确的布局
<amp-youtube data-videoid="mGENRKrdoGY" layout="responsive" width="480" height="270" ></amp-youtube>
<amp-youtube id="myLiveChannel" data-live-channelid="UCB8Kb4pxYzsDsHxzBfnid4Q" width="358" height="204" layout="responsive" > <amp-img src="https://i.ytimg.com/vi/Wm1fWz-7nLQ/hqdefault_live.jpg" placeholder layout="fill" /> </amp-youtube>
属性
自动播放
如果存在此属性,并且浏览器支持自动播放
- 视频在自动播放开始前会自动静音
- 当视频滚动到视野之外时,视频会暂停
- 当视频滚动到视野内时,视频会恢复播放
- 当用户点击视频时,视频会取消静音
- 如果用户与视频进行了交互(例如,静音/取消静音、暂停/恢复等),并且视频滚动到视野内或视野外,视频的状态会保持用户离开时的状态。例如,如果用户暂停视频,然后将视频滚动到视野外,再返回到视频,视频仍处于暂停状态。
循环
如果存在此属性,视频或播放列表将在结束时重新播放(从头开始)。
data-videoid
每个 YouTube 视频页面 URL 中找到的 YouTube 视频 ID。
例如,在此 URL 中:https://www.youtube.com/watch?v=Z1q71gFeRqM
,Z1q71gFeRqM
是视频 ID。
data-live-channelid
提供稳定直播流 URL 的 YouTube 频道 ID。例如,在此 URL 中:https://www.youtube.com/embed/live_stream?channel=UCB8Kb4pxYzsDsHxzBfnid4Q
,UCB8Kb4pxYzsDsHxzBfnid4Q
是频道 ID。你可以提供 data-live-channelid
而不是 data-videoid
属性,以嵌入直播流的稳定 URL,而不是视频。频道没有默认占位符。你可以为视频提供占位符,如上例 2 所示。
data-param-*
所有 data-param-*
属性(data-param-autoplay
和 data-param-loop
除外)都将作为查询参数添加到 YouTube iframe src。这可用于将自定义值传递到 YouTube 插件,例如是否显示控件。
键和值将进行 URI 编码。键将采用驼峰式大小写。
data-param-controls=1
变为 &controls=1
请参阅 YouTube 内嵌播放器参数,了解 YouTube 的更多参数选项。
autoplay
属性而不是 data-param-autoplay
,使用 loop
属性而不是 data-param-loop
,因为自动播放和循环行为由 AMP 在内部处理,而不是由 YouTube 播放器处理。 停靠
需要 amp-video-docking
组件。如果此属性存在并且视频正在手动播放,当用户滚动出视频组件的可视区域时,视频将被“最小化”并固定在某个角落或元素上。
凭据(可选)
定义 credentials
选项,如 Fetch API 所指定。
- 支持的值:
omit
、include
- 默认值:
include
如果你想在 隐私增强模式下使用 YouTube 播放器,请传递 omit
的值。
通常,YouTube 会在加载播放器时设置其 cookie。在隐私增强模式下,当用户点击播放器时会设置 cookie。
标题(可选)
为组件定义一个 title
属性,以便传播到底层的 <iframe>
元素。默认值为 "YouTube video"
。
通用属性
此元素包含 通用属性,已扩展到 AMP 组件。
验证
请参阅 AMP 验证器规范中的 amp-youtube 规则。
您已经读过本文档十几次了,但它并没有真正涵盖您所有的问题?也许其他人也有同感:在 Stack Overflow 上联系他们。
转到 Stack Overflow 发现错误或缺少功能?AMP 项目强烈鼓励您的参与和贡献!我们希望您成为我们开源社区的持续参与者,但我们也欢迎您对您特别热衷的问题进行一次性贡献。
转到 GitHub