首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >JavaScript:当找不到音频时重新加载页面

JavaScript:当找不到音频时重新加载页面
EN

Stack Overflow用户
提问于 2016-05-18 05:40:37
回答 1查看 252关注 0票数 0

所以,我有一个非常基本的脚本,当音频流服务器关闭时,重新加载整个页面。要播放音频,我使用HTML5音频元素。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script type="text/javascript">
    document.getElementById('audio').addEventListener("ended",function() {
        location.reload();
    });
</script>

我想做的是每次在元素中没有源时刷新页面,并保持刷新直到源文件重新打开。

我第一次尝试在页面刷新之后使用HTML5 error事件,原因是ended事件被触发,而且音频源仍然丢失,导致错误。我想“抓取”这个错误,并告诉浏览器再次刷新,直到音频中没有错误。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script type="text/javascript">
    document.getElementById('audio').addEventListener("error",function() {
        location.reload();
    });
</script>

谢谢您抽时间见我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-18 12:23:34

与其重新加载整个页面,相反,海事组织最好重新尝试源代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var audio = document.getElementById('audio'),
    url = "path/to/audio.mp3";

audio.onerror = audio.onabort = function() {
  // show message to user about server being down/audio unavailable
  // retry -
  setTimeout(function() {
    audio.src = url;  // invokes new loading attempt
  }, 5000);           // attempts to reload every 5 seconds
};

audio.oncanplay = function() {
   // all OK
};

audio.src = url;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37301390

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文