为了账号安全,请及时绑定邮箱和手机立即绑定

audio 设置了currentTime后为什么会卡顿?

audio 设置了currentTime后为什么会卡顿?

尚方宝剑之说 2019-01-05 23:14:19
代码如下:<mu-slider v-bind:value="progressPercent" @input="editprogress" class="demo-slider"/>methods:{        editprogress(value){      this.demoSlider=value;      this.$store.commit('editProgress',this.demoSlider)    }  }editProgress(state,progressValue){        const playerBar=document.getElementById("playerBar");                let currentTime=playerBar.duration*(progressValue/100);        // 清除下行代码即不再卡顿;        playerBar.currentTime=currentTime;        let duraTime=playerBar.duration-playerBar.currentTime        let duraMinute=Math.floor(duraTime/60)+":"+(duraTime%60/100).toFixed(2).slice(-2);        let currentMinute=Math.floor(playerBar.currentTime/60)+":"+(playerBar.currentTime%60/100).toFixed(2).slice(-2);        state.audio.currentTime=currentMinute;    }这是一个播放器的进度条,用的是muse-ui的组件,当拖动播放条时调整音频进度,代码可以运行,唯一的问题就是音频卡顿,经过验证,清除设置currentTime(见第三段代码)就不卡了。请教大神是什么原因?PS:chrome浏览器,safari已测试,均卡顿。
查看完整描述

1 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

跟muse-ui有关,提供了两个方法:@input和@change,作用的条件不一样,估计是input只要有变化就会触发,而change只会作用于手动拖动或点击。
解决方法:替换input为change即可。

查看完整回答
反对 回复 2019-01-23
  • 1 回答
  • 0 关注
  • 1003 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信