美文网首页
2018-04-10播放页面优化4

2018-04-10播放页面优化4

作者: 鹿啦啦zz | 来源:发表于2018-04-10 15:32 被阅读0次

1. 解决了最后一句歌词无法高亮显示的问题

function geciScroll () {//时间变化侦听事件
    for(let i=0;i<time.length;i++){
        if(i<time.length-1&&v.currentTime>=transTime(i)-0.5&&v.currentTime<transTime(i+1)-0.5){ //除了最后一句的情况     
            line=i//设置当前行的索引
            $(".currentgeci").removeClass("currentgeci");
            $("#geci").find("li").eq(line).addClass("currentgeci");
        }else if(i==time.length-1&&v.currentTime>=transTime(i)){//是最后一句的情况
            line=//设置当前行的索引
            $(".currentgeci").removeClass("currentgeci");
            $("#geci").find("li").eq(line).addClass("currentgeci");
        }
    }
            
    var a=$(".currentgeci").offset();//当前歌词的偏移位置
    if(a.top>($("#geci").offset().top+205)){
        $("#geci").scrollTop(a.top-$("#geci").find("li").eq(0).offset().top-195);               
    }
}
//添加音乐播放时间变化事件
v.addEventListener("timeupdate",geciScroll);

随着时间变化一直在执行geciScroll()函数。
而geciScroll()函数进行for循环,除最后一句以外,判断当前播放时间的播放区间在什么位置,从而设置line的值,也就是当前歌词的索引。
之前最后一句歌词不能正常显示是因为判断条件有一个
v.currentTime<transTime(i+1)-0.5
当for循环到i=time.length-1的时候transTime(i+1)会超出范围,引起报错
所以需要将最后一句单独列出来处理,也就是加了else if的部分

2. map用法 参考地址

语法:
$.map( object, callback (this,index))
示例:


each的用法 参考地址

array

$.each([ 52, 97 ], function( index, value ) {
  alert( index + ": " + value );
});

object

var obj = {
  "flammable": "inflammable",
  "duh": "no duh"
};
$.each( obj, function( key, value ) {
  alert( key + ": " + value );
});

相关文章

  • 2018-04-10播放页面优化4

    1. 解决了最后一句歌词无法高亮显示的问题 随着时间变化一直在执行geciScroll()函数。而geciScro...

  • 视频播放优化

    前言 视频播放优化是通过跳转到视频页面能够瞬间播放、无缝播放、播放器横竖屏的动画、进度条UISlider滑动和返回...

  • 2020-04-15

    完美网服(苹果cms版)新后台 4月15日 更新优化日志 1.全新对接完美网服后台 2.修复播放页面 3.修复更新...

  • iOS 解决AVPlayerLayer(有声音)无法显示

    背景:有一个详情页面,页面的上半部分需要播放一段mp4视频。流程:进入页面先将播放器渲染好,请求网络得到mp4地址...

  • 页面架构 4-5

    4.页面优化 为什么优化:提升网页响应速度;对搜索引擎、屏幕阅读器友好;提升代码可读性,可维护性 页面优化的方法:...

  • 前端性能初步优化

    性能优化有两个方向 优化页面渲染 减小页面体积,提升网络加载 优化页面渲染 对于优化页面渲染可以进行如下方案来进行...

  • vue keep-alive 轮播图 切换后不播放

    问题描述,首页优化使用keep-alive之后,从别的页面跳回来,swiper轮播不播放,查了好久资料,有的说要重...

  • 「页面架构」页面优化

    页面优化 页面优化可以提升页面的访问速度从而提高用户体验,优化的页面可以更好的提升 SEO 的效果同时也可以提高代...

  • ios视频播放

    1.引入系统框架 2.创建视频的url 3.创建播放项目 4.初始化播放器 5.设置播放页面 #import "V...

  • iOS性能优化之页面加载速率

    iOS性能优化之页面加载速率 iOS性能优化之页面加载速率

网友评论

      本文标题:2018-04-10播放页面优化4

      本文链接:https://www.haomeiwen.com/subject/wqhnhftx.html