【问题标题】:YouTube autoplay workaround?YouTube 自动播放解决方法?
【发布时间】:2018-11-21 07:17:22
【问题描述】:
我了解自动播放的新变化以及视频需要如何静音。但是我有两个问题要尝试解决此功能。由于我正在开发的网站使用特定的音乐视频来迎合审美,而且 Chrome 是最常用的浏览器之一,因此我的网站可以在其上运行会很好。
在阅读了开发者更新后,我看到一条注释说“当“顶部框架委托自动播放权限”时可以允许自动播放。然后它链接到将“允许 =“自动播放”添加到站点。我很想知道它是如何工作的,以及如何将它添加到我的网站。
如果这不起作用,我总是可以制作一个充满视频的文件夹,并让 JavaScript 函数随机选择这些视频。我的问题是,Chrome 不会因为这项政策而自动播放这些视频吗?还是只是普通视频?
【问题讨论】:
标签:
javascript
html
google-chrome
youtube
autoplay
【解决方案1】:
好的,所以我找到了一些解决方法。 allow="autoplay" 的工作方式是您需要在它能够运行之前进行某种网站交互,然后在之后的每次刷新时它都会自动播放。那你能做什么呢?
制作播放/取消静音按钮。当然,这是最耗时的解决方法,因为您需要将其连接到 youtube 的 api。
发出警报。警报表现为站点交互,因此一旦用户单击“确定”,脚本将正常运行。当然,如果您不希望它在每次刷新时提醒用户,那么一个简单的 localhost 脚本应该可以工作。
if (localStorage.getItem("hasCodeRunBefore") === null) {
var chrome = navigator.userAgent.indexOf('Chrome') > -1;
if (chrome) alert('Click ok to load');
window.onload = function () {
localStorage.setItem("hasCodeRunBefore", true);
}
}
- 告诉您的用户在运行 chrome 时使用“ctrl+r”。因为重新加载页面会运行良好。
--
当然,这仅适用于您想要自动播放声音的情况。如果您不在乎,只是想要一个静音视频,添加“?mute=1&”就可以了。