- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有时会遇到 HTML5 音频标签的问题。在某些情况下,加载的音频文件只会播放一次,然后就不会再播放。
HTML(Django 模板)
<audio id="audio" src="{% if key %}streams/{{key}}.wav{% else %}{% endif %}" controls>
<p>Your user agent does not support the HTML5 Audio element.</p>
</audio>
JavaScript(使用 jQuery)
function sendText() {
var textfield = $("#textfield"),
text = textfield.val();
$.ajax({
url: '/rec/',
type: "POST",
data: JSON.stringify({text: text}),
success: function(response) {
var baseUrl = window.location.href.split("?")[0];
$(location).attr('href', baseUrl + "?s=" + response.key);
},
complete: function() {},
error: function(xhr, textStatus, thrownError) {
console.log("error");
}
});
}
因此,我向服务器发送 Ajax 请求,取回 key ,然后使用该 key 作为参数重新加载页面(通过 JavaScript)。该键将成为音频标签中加载的 wav 文件的名称。
页面重新加载后,我就可以播放音频,但只能播放一次。第二次点击“播放”,根本没有任何反应。
但是,当我单击浏览器的重新加载按钮并再次加载页面时,一切正常。
对此有什么解释吗?
最佳答案
根据我自己的一些尝试和错误,我建议尝试在播放后将 currentTime 属性重置为 0,然后重试。
我发现了一些情况(你的情况可能就是其中之一),音频卡住并且结束并且不会自行重置。
我无法提供实际的“解释”...但如果它像我见过的那样 - 这可能是一个可行的解决方案。
<audio id="foo"><source url="myaudio.mp3"></audio>
...
var soundFoo = document.getElementById('foo');
soundFoo.play();
soundFoo.onended = function() {
soundFoo.currentTime = 0;
soundFoo.play(); // assuming you want it to repeat right away.
}
关于JavaScript + HTML5 : Audio will only play once under certain circumstances,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27375809/
我正在编写一个非常简单的程序,每 5 分钟执行一次操作。我目前正在尝试设置一个计时器并通过简单地让它增加一个数字来测试它。我从相关问题中复制了一些代码,包括相关代码(CIQ),最终得到以下内容。我注意
我有时会遇到 HTML5 音频标签的问题。在某些情况下,加载的音频文件只会播放一次,然后就不会再播放。 HTML(Django 模板) Your user agent does not su
didInvalidatePushTokenForType 的文档说它是可选的实现,也说了这一点 This method is invoked if a previously provided pus
我的 React Native 项目中有组件 react-native-modal-datetime-picker 。它抛出以下错误: 错误:捆绑失败:错误:无法从“node_modules/reac
我的 Web 应用程序的异常处理代码有时会报告 window.open 返回 null 或未定义。这种情况是偶发的,我发现大多数情况下,Firefox 4.0.1 和 5.0 都会出现这种情况,而 C
经过大量谷歌搜索后,我发现大多数消息来源都说 Dijkstra 算法比 Bellman-Ford 算法“更有效”。但是在什么情况下Bellman-Ford算法比Dijkstra算法更好呢? 我知道“更
这个问题在这里已经有了答案: Java 8 Streams: multiple filters vs. complex condition (4 个答案) 关闭 4 年前。 需要过滤所有适合其领域某
对于菜单checkItem,当用户点击它时,默认会触发checkchange;我想知道如果遇到某种情况,如何在单击后不更改其检查状态,换句话说,停止此事件链。 我尝试了以下代码,但没有用: liste
对于菜单checkItem,当用户点击它时,默认会触发checkchange;我想知道如果遇到某种情况,如何在单击后不更改其检查状态,换句话说,停止此事件链。 我尝试了以下代码,但没有用: liste
我发现一个非常奇怪的(恕我直言)行为,一些数据从 CSV 文件加载到 pandas 中。为了保护无辜者,让我们声明 DataFrame 位于变量 homes 中,并且除其他外,具有以下列: In [1
长话短说,如果我的 UINavigationBar 的 alpha 设置为 0,我希望所有触摸都转到底层 View (从带有导航栏的 View Controller 的角度来看,它只是是 self.v
我是一名优秀的程序员,十分优秀!