老师帮我看下 为什么谷歌浏览器 点不了进度条 没次点击都会重新播放 用火狐浏览器就是可以的

老师帮我看下 为什么谷歌浏览器 点不了进度条 没次点击都会重新播放 用火狐浏览器就是可以的



老师帮我看下 为什么谷歌浏览器 点不了进度条 没次点击都会重新播放  用火狐浏览器就是可以的

//给播放器添加js

//创建Audio 对象

var myAudio = new Audio();

myAudio.src = 'music/mus/阿悠悠 - 一曲相思 (Live).mp3';

var playBtn = document.querySelector('.playNode'),

playBln = true;

var lumeNode = document.querySelector('.volumeNode'),

volumeNode = true;

var trueLine = document.querySelector('.trueLine');

var progressNode = document.querySelector('.progressNode');

var outerNode = document.querySelector('.outerNode');

playBtn.onclick = function() {

playBln = !playBln;

if(playBln == false){

myAudio.play();

}else{

myAudio.pause();

}

}

lumeNode.onclick = function(){

volumeNode = !volumeNode;

if(volumeNode == false){

myAudio.volume = 0;

this.className = "volumeNode2";

}else{

myAudio.volume = 1;

this.className = "volumeNode";

}

}

myAudio.addEventListener('timeupdate',function(){

trueLine.style.width = myAudio.currentTime/myAudio.duration * 100 +'%';

})

progressNode.onclick = function(e){

var ev = e || event;

myAudio.currentTime = myAudio.duration * ((ev.clientX - (this.offsetLeft + outerNode.offsetLeft)-6)/this.offsetWidth);

trueLine.style.width = (ev.clientX - (this.offsetLeft + outerNode.offsetLeft)-6)/this.offsetWidth*100 + '%';

}


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学你好,如果想要样式美观,这个边框也可以不设置。

或者开始没有边框,点击播放的时候再添加,例如:

http://img1.sycdn.imooc.com//climg/5e0eda250919fd0b07110331.jpghttp://img1.sycdn.imooc.com//climg/5e0eda30096046c806230191.jpg

不用太纠结样式问题,主要是掌握播放器的api。

祝学习愉快!

  • Rain_2020 提问者 #1
    好的 不过我还发现了一个问题 因为代码太多了 , 播放完的时候,音乐播放完了 但是它还有一小段 绿色条 没有完全覆盖 怎么处理啊
    2020-01-03 15:18:23
  • 好帮手慕星星 回复 提问者 Rain_2020 #2
    你好,老师这边的图片和同学的不一致,所以无法复原同学的问题。可以查看一下私信,老师在私信中解决。
    2020-01-03 18:01:22
好帮手慕码 2020-01-02 18:25:11

同学你好,老师使用了源码的部分图片和音乐文件测试,在谷歌浏览器下,点击进度条以后会继续播放,没有出现重新播放的效果,如下:

http://img1.sycdn.imooc.com//climg/5e0dc15909871d7b06200336.jpg

再次点击:

http://img1.sycdn.imooc.com//climg/5e0dc17609c3576a09020397.jpg

并没有重新播放哦,建议同学再测试一下(可以清除下浏览器缓存)。

如果我的回答帮了你,欢迎采纳,祝学习愉快~

  • 提问者 Rain_2020 #1
    我还有个问题 怎么解决 border:1px solid red; 一开始的时候 他是存在一条细线的 播放了之后才有里面的绿色条 。 那个边框怎么出来 在一开始的时候不显示?
    2020-01-03 09:18:51
好帮手慕码 2020-01-02 14:25:03

同学你好,只有js代码无法测试,建议同学将全部代码粘贴至问答区进行测试,以便准确的帮助同学分析解决!

祝学习愉快~

  • 提问者 Rain_2020 #1
    回复内容不能多于1500个字符!
    2020-01-02 14:34:35
  • 提问者 Rain_2020 #2
    <style type="text/css"> * { margin: 0; padding: 0; } .outerNode { width: 860px; height: 380px; background: silver; position: absolute; left: 50%; top: 50%; margin: -190px 0 0 -430px; box-shadow: 0 0 10px #5B606D; border-radius: 8px; } .innerNode { width: 858px; height: 379px; border-left: 1px solid #ebe7d2; border-right: 1px solid #ebe7d2; border-top: 1px solid #8c8c8c; border-radius: 8px; overflow: hidden; } .topNode { width: 100%; height: 142px; border-bottom: 1px solid #898670; background: url(music/fmt/fmt1.png) center center; background-size: cover; } .lineNode { width: 100%; height: 61px; border-top: 1px solid #e7e6d9; border-bottom: 1px solid #e7e6d9; background: url('musicImg/line_bg.png') repeat-x; } .progressNode { width: 804px; height: 26px; background: url(musicImg/lineNode-bg.png) repeat-x; margin: 17px 0 0 26px; position: relative; }
    2020-01-02 14:36:20
  • 提问者 Rain_2020 #3
    .progressNode .progressLeft { width: 10px; height: 100%; background: url(musicImg/lineNode-lf.png) no-repeat; position: absolute; left: -9px; top: -1px; } .progressNode .progressRight { width: 11px; height: 100%; background: url(musicImg/lineNode-rl.png) no-repeat; position: absolute; right: -10px; top: -1px; } .bottomNode { width: 100%; height: 177px; border-top: 1px solid #f1eedf; background: url(musicImg/buttonNode_bg.png) repeat-x; position: relative; } .bottomNode .lastNode { width: 86px; height: 87px; background: url(musicImg/btn-left.png) no-repeat; position: absolute; top: 50%; left: 230px; margin-top: -43.5px; cursor: pointer; }
    2020-01-02 14:37:02
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.WebAPP开发与小程序
  • 参与学习           人
  • 提交作业       622    份
  • 解答问题       6815    个

微信带火了小程序,也让前端工程师有了更多的展现机会,本阶段带你从移动基础知识的学习到webAPP开发,及小程序开发,让你PC端与移动端两端通吃。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师