html5多次用js播放audio之后就没有声音了. 重新刷新之后又好了
问题如题,代码如下functionplayAudio(source){player=newAudio(source);player.preload=true;player...
问题如题, 代码如下
function playAudio(source) {
player = new Audio(source);
player.preload = true;
player.volume = 1;
// player.autoplay = "autoplay";
// player.volume = 1.0;
player.play();
}
一般是播放3‘-40次之后就会突然没有声音了。 刷新网页之后又回复了。 这个问题在pc浏览器上也没有。 求高手出手。
问题目前只在手机浏览器上有发现, 包括微信自带的浏览器。 展开
function playAudio(source) {
player = new Audio(source);
player.preload = true;
player.volume = 1;
// player.autoplay = "autoplay";
// player.volume = 1.0;
player.play();
}
一般是播放3‘-40次之后就会突然没有声音了。 刷新网页之后又回复了。 这个问题在pc浏览器上也没有。 求高手出手。
问题目前只在手机浏览器上有发现, 包括微信自带的浏览器。 展开
2个回答
展开全部
推荐你采用JS控制
既然看到送你一个demo吧,自行研究,应该都很详细了
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1 user-scalable=0"/>
<link rel="shortcut icon" href="img/logo.png">
<title>html5 audio音频播放</title>
<style>
*{ margin: 0; padding:0;}
body{-webkit-tap-highlight-color: rgba(0,0,0,0); font-family: "微软雅黑"}
h1{ width: 100%; font-size: 1.5em; text-align: center; line-height: 3em; color:#47c9af; }
#audio{ width: 100%;}
#control{ width: 150px; height: 150px; line-height: 150px; text-align: center; border-radius: 200px; border:none; color:#fff; margin-top: -75px; margin-left:-75px; left:50%; top:50%; position: absolute; box-shadow: #888 0 0 8px;}
.color_gray{ background: #e4e4e4}
.hide{ display: none;}
.show{ display: block;}
.play{ background: #f06060;}
.pause{ background:skyblue}
/*进度条样式*/
.progressBar{ width: 100%; height: 10px;margin: 30px auto 30px auto; position:absolute; left: 0; bottom: 35px;}
.progressBar div{ position: absolute;}
.progressBar .progressBac{ width: 100%; height: 10px; left: 0; top:0; background: #e4e4e4;}
.progressBar .speed{width: 100%; height: 10px; left: -100%; background: #f06060; }
.progressBar .drag{ width: 30px; height: 30px; left: 0; top:-10px; background: skyblue; opacity: 0.8; border-radius: 50px; box-shadow: #fff 0 0 5px;}
/*时间样式*/
#time{ width: 100%; height: 20px;position: absolute; left: 0; bottom:30px; color:#888;}
.tiemDetail{ position: absolute; right:10px; top:0;}
#songInfo{overflow: hidden; width: 200px; height:50px; line-height: 50px; text-align: center; color:#34495e; margin-top: -25px; margin-left:-100px; left:50%; top:70%; position: absolute;}
.shareImg{ position: absolute; left: 100000px;}
</style>
</head>
<body>
<script>
$(function() {
getSong();
})
//获取歌曲链接并插入dom中
function getSong() {
var audio = document.getElementById("audio");
audio.src = "
audio.loop = true; //歌曲循环
playCotrol(); //播放控制函数
}
//点击播放/暂停
function clicks() {
var audio = document.getElementById("audio");
$("#control").click(function() {
if ($("#control").hasClass("play")) {
$("#control").addClass("pause").removeClass("play");
audio.play();//开始播放
dragMove();//并且滚动条开始滑动
$("#control").html("暂停播放");
} else {
$("#control").addClass("play").removeClass("pause");
$("#control").html("点击播放");
audio.pause();
}
})
}
//播放时间
function timeChange(time, timePlace) {
var timePlace = document.getElementById(timePlace);
//分钟
var minute = time / 60;
var minutes = parseInt(minute);
if (minutes < 10) {
minutes = "0" + minutes;
}
//秒
var second = time % 60;
seconds = parseInt(second);
if (seconds < 10) {
seconds = "0" + seconds;
}
var allTime = "" + minutes + "" + ":" + "" + seconds + ""
timePlace.innerHTML = allTime;
}
//播放事件监听
追问
本来就全部是js控制的。不需要任何播放界面。每次播放的内容都不一样,播放时把内容传递进来,调用这个函数。你好像没有仔细看我的问题
你的复制粘贴的东西根本就没有解决我的问题,还浪费我的积分和时间。这个傻x百度,把一个确认回答按钮搞得像个选中了的checkbox一样,我想取消选中,结果傻x还确认了你的答案了。更无耻的是不能改回来了。气死我了
2020-08-17
展开全部
你是不是用了微信访问?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询