写了个方法,可以兼容IE,FF,Chrome,opera,safari。
但firefox需要音频格式是ogg,不支持mp3,所以如果firefox需要播放,需要有ogg的文件。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<textarea name="text" style= "resize:none;" id="text"></textarea>
<div id="player"></div>
<script type="text/javascript">
/** 音乐播放器
* @param obj 播放器id
* @param file 音频文件 mp3: ogg:
* @param loop 是否循环
*/
function audioplayer(id, file, loop){
var audioplayer = document.getElementById(id);
if(audioplayer!=null){
document.body.removeChild(audioplayer);
} if(typeof(file)!='undefined'){
if(navigator.userAgent.indexOf("MSIE")>0){ // IE
var player = document.createElement('bgsound');
player.id = id;
player.src = file['mp3'];
player.setAttribute('autostart', 'true');
if(loop){
player.setAttribute('loop', 'infinite');
}
document.body.appendChild(player); }else{ // Other FF Chome Safari Opera var player = document.createElement('audio');
player.id = id;
player.setAttribute('autoplay','autoplay');
if(loop){
player.setAttribute('loop','loop');
}
document.body.appendChild(player); var mp3 = document.createElement('source');
mp3.src = file['mp3'];
mp3.type= 'audio/mpeg';
player.appendChild(mp3); var ogg = document.createElement('source');
ogg.src = file['ogg'];
ogg.type= 'audio/ogg';
player.appendChild(ogg); }
}
}var file = {"mp3":"88.mp3","ogg":"88.ogg"};
audioplayer("player", file, 1);
</script>
</body>
</html>
但firefox需要音频格式是ogg,不支持mp3,所以如果firefox需要播放,需要有ogg的文件。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<textarea name="text" style= "resize:none;" id="text"></textarea>
<div id="player"></div>
<script type="text/javascript">
/** 音乐播放器
* @param obj 播放器id
* @param file 音频文件 mp3: ogg:
* @param loop 是否循环
*/
function audioplayer(id, file, loop){
var audioplayer = document.getElementById(id);
if(audioplayer!=null){
document.body.removeChild(audioplayer);
} if(typeof(file)!='undefined'){
if(navigator.userAgent.indexOf("MSIE")>0){ // IE
var player = document.createElement('bgsound');
player.id = id;
player.src = file['mp3'];
player.setAttribute('autostart', 'true');
if(loop){
player.setAttribute('loop', 'infinite');
}
document.body.appendChild(player); }else{ // Other FF Chome Safari Opera var player = document.createElement('audio');
player.id = id;
player.setAttribute('autoplay','autoplay');
if(loop){
player.setAttribute('loop','loop');
}
document.body.appendChild(player); var mp3 = document.createElement('source');
mp3.src = file['mp3'];
mp3.type= 'audio/mpeg';
player.appendChild(mp3); var ogg = document.createElement('source');
ogg.src = file['ogg'];
ogg.type= 'audio/ogg';
player.appendChild(ogg); }
}
}var file = {"mp3":"88.mp3","ogg":"88.ogg"};
audioplayer("player", file, 1);
</script>
</body>
</html>
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货