效果图很重要
歌曲选择了最近特别火的 太阳的后裔的原声音乐6首。通过正规渠道获得了听播的权利(花20块买的,哈哈),非商业用途,个人使用应该是没事的~~~
效果图.png
列子
这里是一个栗子seaseeYoul-Audio
说明
这是一个使用html+css+js完成的网页版MP3。这个栗子实现了上一曲,下一曲,喜欢,静音,查看播放列表,点歌(单击播放列表中的歌曲进行播放)。模仿了CD的旋转这些功能,从界面设计到功能全部由个人完成。暂时已兼容除IE外所有主流浏览器。系统有问题,IE测不了。。。底部附录全部代码。
准备材料
- sublime text3
- google浏览器 chrome ,或则其他对css3支持较好的浏览器
各个功能的实现思路
特别注意与小技巧:因为要使用定时器,所以在进行定时器相关操作时一定要先清除上一个定时器,否则会混乱。使用一些隐藏的标签来保存一些属性,能使js更加简便。如存储当前播放的歌曲的idⅠ:播放/暂停功能
播放功能实现了四个效果,一是音乐的播放,改变播放按钮的样式,这一点分别使用媒体标签拥有的play()方法,即:var _this=document.getElementById('audio'); _this.play(); 。改变按钮的样式则只需要改变按钮本身的class即可了。二是给CD添加一个旋转效果,这个效果则由css3来完成。使用 animation-play-state:paused/running;-webkit-animation-play-state:paused/running;来控制动画的开始与暂停,这个class的作用就是给CD添加动画的。三是倒计时,倒计时只需要获取到歌曲的总时间即可,我把所有的歌曲信息都存储到了一个数组里面,需要什么,我就从数组里面拿到即可。四是进度条,进度条同倒计时一样,使用定时器与css配合完成。核心代码如下:
music_list:[{"address":"1.mp3","lrc":"1.lrc","singer":"纯音乐","name":"Always(Inst)","time":"205"},{"address":"2.mp3","lrc":"2.lrc","singer":"T[伊莱美]","name":"Always","time":"205"},{"address":"3.mp3","lrc":"3.lrc","singer":"CHEN[EXO] & Punch","name":"Everytime","time":"189"},{"address":"4.mp3","lrc":"4.lrc","singer":"金娜英 & Mad Clown","name":"再次见到你","time":"235"},{"address":"5.mp3","lrc":"5.lrc","singer":"纯音乐","name":"再次见到你(Inst)","time":"235"},{"address":"6.mp3","lrc":"6.lrc","singer":"Lyn","name":"With you","time":"254"}]togglePlay: function(){ var _this = document.getElementById('audio'); clearInterval(timer); if($("#play").hasClass("icon-play")){ $("#play").removeClass("icon-play").addClass("icon-pause"); $(".disc").css({"animation-play-state":"running"}); _this.play(); timer = setInterval(audio.count,1000); }else{ $("#play").removeClass("icon-pause").addClass("icon-play"); _this.pause(); clearInterval(timer); $(".disc").css({"animation-play-state":"paused"}); } audio._likes();},Ⅱ上一曲/下一曲
上一曲下一曲的功能本质是更改audio标签里面的src地址,当src指向一首新的歌曲的时候,那么再点击播放,播放的音乐也就切换了。这个使用jq很容易完成。其次是更新现实的歌曲信息,核心代码如下:
next:function(){ var _this = document.getElementById('audio'); var _nextMusicId = parseInt($("#musicid").val())+1; _nextMusicId = _nextMusicId > audio.music_list.length-1? 0 :_nextMusicId; $("#musicid").val(_nextMusicId); var nextMusicSrc ="./music/" +audio.music_list[_nextMusicId].address; _this.src = nextMusicSrc; $("#play").addClass("icon-play"); $("#countdown").attr("time",audio.music_list[_nextMusicId].time); $(".singer").html(audio.music_list[_nextMusicId].singer); $(".music-info").html(audio.music_list[_nextMusicId].name); audio.togglePlay();},prev:function(){ var _this = document.getElementById('audio'); var _nextMusicId = parseInt($("#musicid").val())-1; _nextMusicId = _nextMusicId > audio.music_list.length-1? 0 :_nextMusicId; $("#musicid").val(_nextMusicId); var nextMusicSrc ="./music/" +audio.music_list[_nextMusicId].address; _this.src = nextMusicSrc; $("#play").addClass("icon-play"); $("#countdown").attr("time",audio.music_list[_nextMusicId].time); $(".singer").html(audio.music_list[_nextMusicId].singer); $(".music-info").html(audio.music_list[_nextMusicId].name); audio.togglePlay();},Ⅲ静音
静音很容易实现,同是使用媒体标签自带的属性,_this.muted = false;开启静音,_this.muted = true;关闭静音。【var _this = document.getElementById('audio');】
Ⅳ喜欢喜欢也很容易实现,点击爱心,把他变为实心,颜色改为红色(更改class),红色的爱,才是真爱。哈哈哈哈~~,并且设置播放列表里面的当前这首歌曲的like(自定义的)属性为like。再次点击的时候在变回去即可。
Ⅴ查看播放列表把装播放列表的div显示出来就可以了。什么样的方式自己决定。
Ⅵ 点歌点歌的原理其实与上一曲/下一曲是一样的,只是上下一曲是地址加减1,而点歌是指定某一首。
Ⅶ附录所有的代码都在这里
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>saeseeYoul-Audio</title> <link rel="stylesheet" href="css/reset.css"> <link rel="stylesheet" href="css/font-awesome.min.css"> <link rel="stylesheet" href="css/audio.css"></head><body> <div class="container"> <div class="info"> <span class="icon-music tit"></span> <h3 id="CHEN-EXO-Punch">CHEN[EXO]&Punch</h3> <h4 id="Always-Inst">Always(Inst)</h4> <div class="disc"> <h4 id="seaseeYoul">seaseeYoul.</h4> <div class="cd1"> <div class="cd2"></div> </div> </div> <div class="spinner" id="load"> <div class="bounce1"></div> <div class="bounce2"></div> <div class="bounce3"></div> </div> </div> <div class="action"> <h5 id="">-00:00</h5> <input type="hidden" value="0" id="musicid"> <audio src="./music/1.mp3" id="audio" controls="controls" preload="auto"></audio> <span class="time"> <i id="time_ring"></i> </span> <ul class="action_button"> <li class="large icon-step-backward" id="prev"></li> <li class="large icon-play" id="play"></li> <li class="large icon-step-forward" id="next"></li> <li class="nomal icon-volume-up" id="mute"></li> <li class="nomal icon-heart-empty" id="likes"></li> <li class="nomal icon-reorder" id="menu"></li> </ul> </div> <ul class="list"></ul> </div> <script src="js/jquery.min.js"></script> <script src="js/audio.js"></script></body></html>
Ⅷ其他说明这里是cCss代码 Css code
这里是Js代码 js code
其实还有两种状态没考虑到,一是网络不好的时候,MP3歌曲没加载完成,处于等待播放的状态,这时候应该清楚定时器以及一些其他效果,等待MP3重新开始播放。二就是MP3等待结束重新开始播放,这时候应该还原到播放状态。但是我是本地测试,而且网速比较好完全没有这两个状态。。。测不了啊测不了。。。原谅我吧。。。
亲们喜欢的点赞吧么么哒~~~

Htmlisnotaprogramminglanguage; itisamarkuplanguage.1) htmlstructuresandformatswebcontentusingtags.2) itworksporstylingandjavaScriptOfforIncincivity, WebDevelopment 향상.

HTML은 웹 페이지 구조를 구축하는 초석입니다. 1. HTML은 컨텐츠 구조와 의미론 및 사용 등을 정의합니다. 태그. 2. SEO 효과를 향상시키기 위해 시맨틱 마커 등을 제공합니다. 3. 태그를 통한 사용자 상호 작용을 실현하려면 형식 검증에주의를 기울이십시오. 4. 자바 스크립트와 결합하여 동적 효과를 달성하기 위해 고급 요소를 사용하십시오. 5. 일반적인 오류에는 탈수 된 레이블과 인용되지 않은 속성 값이 포함되며 검증 도구가 필요합니다. 6. 최적화 전략에는 HTTP 요청 감소, HTML 압축, 시맨틱 태그 사용 등이 포함됩니다.

HTML은 웹 페이지를 작성하는 데 사용되는 언어로, 태그 및 속성을 통해 웹 페이지 구조 및 컨텐츠를 정의합니다. 1) HTML과 같은 태그를 통해 문서 구조를 구성합니다. 2) 브라우저는 HTML을 구문 분석하여 DOM을 빌드하고 웹 페이지를 렌더링합니다. 3) 멀티미디어 기능을 향상시키는 HTML5의 새로운 기능. 4) 일반적인 오류에는 탈수 된 레이블과 인용되지 않은 속성 값이 포함됩니다. 5) 최적화 제안에는 시맨틱 태그 사용 및 파일 크기 감소가 포함됩니다.

WebDevelopmentReliesonHtml, CSS 및 JavaScript : 1) HtmlStructuresContent, 2) CSSSTYLESIT, 및 3) JAVASCRIPTADDSINGINTERACTIVITY, BASISOFMODERNWEBEXPERIENCES를 형성합니다.

HTML의 역할은 태그 및 속성을 통해 웹 페이지의 구조와 내용을 정의하는 것입니다. 1. HTML은 읽기 쉽고 이해하기 쉽게하는 태그를 통해 컨텐츠를 구성합니다. 2. 접근성 및 SEO와 같은 시맨틱 태그 등을 사용하십시오. 3. HTML 코드를 최적화하면 웹 페이지로드 속도 및 사용자 경험이 향상 될 수 있습니다.

"Code"는 "Code"BroadlyIncludeLugageslikeJavaScriptandPyThonforFunctureS (htMlisAspecificTypeofCodeFocudecturecturingWebContent)

HTML, CSS 및 JavaScript는 웹 개발의 세 가지 기둥입니다. 1. HTML은 웹 페이지 구조를 정의하고 등과 같은 태그를 사용합니다. 2. CSS는 색상, 글꼴 크기 등과 같은 선택기 및 속성을 사용하여 웹 페이지 스타일을 제어합니다.

HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

드림위버 CS6
시각적 웹 개발 도구

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는
