火狐浏览器用audio标签,利用js给audio的src属性赋值问题(这个问题 好像只有火狐才有)

html源码:

<audio controls="controls" src="" id="src"/>

js源码:

var fileName="";
$(function(){
var locationUrl=window.location.href;
var paramList = locationUrl.split("?")[1];//取得参数
fileName=paramList.split("&")[0].split("=")[1];
document.getElementById("src").load();
$("#url").val(fileName);
$("#src").attr("src",fileName);

});

现象:展现页面时,录音文件没有加载。

然后我看了浏览器中的代码,发现src是有值的。 我百度了下,别人说要重新加载下src  然后 我就在后面加了句:

 document.getElementById("src").load();

整个js代码 就是这样:

var fileName="";
$(function(){
var locationUrl=window.location.href;
var paramList = locationUrl.split("?")[1];//取得参数
fileName=paramList.split("&")[0].split("=")[1];
document.getElementById("src").load();
$("#url").val(fileName);
$("#src").attr("src",fileName);
document.getElementById("src").load();
});

现象还是一样,问题还是没有解决。自己想了下,可能是加载的顺序有关,随后,

在后面增加了几句js:

$(window).load(function(){
document.getElementById("src").load();
});

问题完美解决。

--百度看了好多人都问了这个问题,我也刚好遇到就记录了下,希望以后遇到能解决。

原文地址:https://www.cnblogs.com/xiaohuachen/p/9816633.html