javascript - iframe视频的替代图片

标签 javascript html iframe youtube alt

因此,我想为iframe youtube视频提供一个替代方案,因此,如果该视频未加载互联网连接的cuz,则它将从本地主机加载alt图像。

<iframe width="95%" height="320" src="https://www.youtube.com/embed/OA318VbEhtc?&rel=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>


有人可以帮我这个忙吗?

最佳答案

我使用以下方法找到了一个简单的答案:

<html>
<head>
<script>            
function updateOnlineStatus() {
document.getElementById('video').src = "HERE COMES THE YT LINK";
document.getElementById('video').style.backgroundImage = "";
}

function updateOfflineStatus() {
document.getElementById('video').style.backgroundImage = "url(PATH TO A CUSTOM ERROR 
IMAGE)";
document.getElementById('video').src = "";
}

window.addEventListener('online', updateOnlineStatus);
window.addEventListener('offline', updateOfflineStatus); 

</script>
</head>
<body>
<iframe id="video" width="95%" height="320" frameborder="0" allowfullscreen></iframe>


<script>
if(navigator.onLine){
document.getElementById('video').src = "HERE COMES THE YT LINK";
document.getElementById('video').style.backgroundImage = "";
} else {
document.getElementById('video').style.backgroundImage = "PATH TO A CUSTOM ERROR 
IMAGE";
document.getElementById('video').src = "";
}
</script>

</body>
</html>

页面加载后,这首先检查是否有Internet连接。如果离线,则视频源将被删除,并且您将只能看到背景图片(自定义错误页面),并且在加载页面后,如果互联网连接处于打开或关闭状态,事件监听器将再次检查在线/离线状态并进行正确的更改。

关于javascript - iframe视频的替代图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53573018/

相关文章:

javascript - 不理解 javascript window.frames.Array

javascript - 比更改类名的开关更好的解决方案

javascript - jQuery 根据单击的 anchor 更改选择框值

javascript - 获取 iframe 的当前位置/url 并分配给变量

javascript - 如何为按键设置动画?

javascript - 防止更改 HTML 只读文本字段

iframe - 如何将 iframe src 设置为本地文件

javascript - 公开一个全局可计算的

javascript - Angular 1 组件路由器 : Cannot read property 'startsWith' of undefined

jquery - 在哪里可以找到源函数定义?