过去,我不知道为什么它现在没有。无论如何,我的JS如下:
$(document).ready(function(){
var $container = $('#soundboard');
$("#jplayer").jPlayer({
supplied: "mp3",
wmode: "window"
});
$("a.playbutton").click(function(e) {
var current = $("#jplayer").data().jPlayer.status.src
var playing = current.split("/");
var href = encodeURIComponent($(this).attr("href"));
if(playing[3] != href) {
console.log("href:" + href);
console.log("playing:" + playing);
console.log("current:" + current);
$("#jplayer").jPlayer("setMedia", {mp3: "http://mp3.mydomain.net/" + href});
$("#jplayer").jPlayer("play");
$("a.playbutton").removeClass("stop");
$(this).addClass('stop');
$("a.playbutton > img").each(function () {
$(this).attr("src","http://i.mydomain.net/icons/play.png");
});
} else {
$("#jplayer").jPlayer("stop");
$("#jplayer").jPlayer("clearMedia");
$("a.playbutton").removeClass("stop");
}
return false;
});
});
上次我查看此页面时效果很好,出于某种原因,它已经消失了。我用jquery.jplayer.min.js
更新了我的jplayer.js文件。
HTML是:
<a href='mymp3.mp3' class='playbutton'></a>
文件名是正确的,变量看似正确,但根本没有播放音频。我也没有收到任何错误消息,从JS看到的图片都变化很好。我没有任何工作,因为没有错误消息:(
修改:这是特定于Chrome的错误。该播放器在Internet Explorer中工作正常。
答案 0 :(得分:2)
显然,Chrome的最新稳定版本打破了jPlayer的html5音频,因为jPlayer使用的是非标准的mimetype用于mp3文件。
请参阅:https://code.google.com/p/chromium/issues/detail?id=386073
修复此处但需要编辑jplayer javascript文件:https://github.com/happyworm/jPlayer/issues/223
围绕第704行(版本2.6.3)更改为:
mp3: {
//codec: 'audio/mpeg; codecs="mp3"',
codec: 'audio/mpeg',
flashCanPlay: true,
media: 'audio'
},
更新:
已在最新版本的jPlayer中修复:https://cdnjs.cloudflare.com/ajax/libs/jplayer/2.6.4/jquery.jplayer/jquery.jplayer.min.js