zoukankan      html  css  js  c++  java
  • 托管在github上的个人简历、静态网页里的音乐播放器,暂停、下一首、顺序播放

     把github、git、github pages大概搞清楚了之后俺就开始写托管在github pages上的简历网页了,第一次感觉自学以来不算是浪费时间,还是学到了一些东西的。

    感觉响应式设计和浏览器兼容会是一个很大的问题,我的预想大概是这样:

    判断是移动端还是浏览器端:

      移动端:加载移动端的样式表

      浏览器端:判断是哪个浏览器(因为发现相同样式在谷歌和火狐上的效果有一定差别)

        浏览器端浏览:大概设置两个断点,即三套有些微不同的样式表。

    不准备用bootstrap的栅格系统,感觉没有意思ฅʕ•̫͡•ʔฅ

     

    在简历中准备了一块用来展示过去四个月做的小demo,顺便作为面试家园工作室/暑期实习前的复习了

     

     还是用version的形式来记录,预计version2.0.0开始就是完整的谷歌浏览器端的界面,包括字蛛爬取出来的字体啊,svg图标等等。

     

     

    记录一下其中一个小模块:音乐播放器

    (谷歌浏览器)

    (注意,上图中圈出来的地方都是自己添加的,用的转义字符或者icon图标。)

    js代码

       $(function(){
        var audioCounts = 0;
        var songs = ["王若琳-Let's Start From Here.mp3",
                    "马修·连恩 - 布列瑟农.mp3",
                    "The Brothers Four - 500 miles.mp3",
                    "Kygo,Ed Sheeran - I See Fire (Kygo Remix).mp3"];
        var audioSrcFile = "../audio/";
        var player = document.getElementsByTagName("audio")[0];
        var audioCounts;
    
        $("#rightChange").click(function next (){
    
            player.pause();
    
            if(audioCounts == 3){
                audioCounts = 0;
            }else{
                audioCounts++;
            }
            var audioSrc = audioSrcFile + songs[audioCounts];
            console.log(audioSrc);
            document.getElementsByTagName("source")[0].setAttribute("src",audioSrc);
            player.load();
            player.play();
            $("#audioTitle").text(songs[audioCounts].slice(0,-4));
        });
    
        $("#leftChange").click(function(){
            player.pause();
    
            if(audioCounts == 0){
                audioCounts = 3;
            }else{
                audioCounts--;
            }
            console.log(audioCounts);
            var audioSrc = audioSrcFile + songs[audioCounts];
            console.log(audioSrc);
            document.getElementsByTagName("source")[0].setAttribute("src",audioSrc);
            player.load();
            player.play();
            $("#audioTitle").text(songs[audioCounts].slice(0,-4));
        });
    
        $("#closeBtn").click(function(){
            player.pause();
            $("#container").hide();
            $(".showPlayer").show();
        });
    
        player.onended = function(){
               if(audioCounts == 3){
                   audioCounts = 0;
               }else{
                   audioCounts++;
               }
    var audioSrc = audioSrcFile + songs[audioCounts];
            console.log(audioSrc);
            document.getElementsByTagName("source")[0].setAttribute("src",audioSrc);
            player.load();
            player.play();
            $("#audioTitle").text(songs[audioCounts].slice(0,-4));
        };
    
       
       })
      

    由于是静态页面(没有php、没有asp、没有sql、没有node.js),这是我目前想到的比较okay的一个实现方式,缺点就是在github pages上运行时加载音乐资源需要5s以上的延迟(本机数据)。

    几个需要注意的地方:

    1.点击“>”按钮时跳转到下一首歌的这个步骤,在更改了路径以后,需要执行一次player.load(),重新加载资源文件,否则不会切换。

    2.谷歌浏览器对自动播放政策是有限制的,详情可以点击这篇文章,希望你会有收获。

  • 相关阅读:
    从csdn转移到博客园的一篇测试文章
    接口与抽象类的区别
    python网络爬虫进阶之HTTP原理,爬虫的基本原理,Cookies和代理介绍
    python验证码识别(2)极验滑动验证码识别
    VMWare虚拟机应用介绍
    Rpg maker mv角色扮演游戏制作大师简介
    python数据挖掘之数据探索第一篇
    python数据分析&挖掘,机器学习环境配置
    python爬取豆瓣视频信息代码
    python验证码处理(1)
  • 原文地址:https://www.cnblogs.com/linbudu/p/10962586.html
Copyright © 2011-2022 走看看