>  기사  >  웹 프론트엔드  >  가장 간단한 프런트 엔드 기술을 사용하여 간단한 음악 플레이어 만들기

가장 간단한 프런트 엔드 기술을 사용하여 간단한 음악 플레이어 만들기

php中世界最好的语言
php中世界最好的语言원래의
2018-03-08 14:27:583944검색

이번에는 가장 간단한 프론트엔드 기술을 사용하여 간단한 뮤직 플레이어를 만드는 방법을 보여드리겠습니다. 프론트엔드 기술을 사용하여 간단한 뮤직 플레이어를 만들 때 사용할 주의 사항은 무엇입니까? 살펴보자.

이 플레이어의 음악은 Douban FM의 API를 통해 획득됩니다. Douban FM의 모든 음악을 무작위로 들을 수 있습니다.

html part
code:

<div class="wrapper">
<div class="background"></div>
<div class="content">
<audio src=""></audio>
<div class="music-massage">
<p class="musicname"></p>
<p class="musicer"></p>
</div>
<div class="music-icon">
<a class="m-icon m-fenxiang colored" href="http://service.weibo.com/share/share.php?title=#_loginLayer_1466697157538" target="new"></a>
<span class="m-icon m-star colored"></span>
<span class="m-icon m-heart colored"></span>
</div>
</div>
<span class="basebar">
<span class="progressbar"></span>
</span>
<div class="controls">
<div class="play-control">
<span class="m-icon m-play btn1" title="播放/暂停"></span>
<span class="m-icon m-change btn2" title="换频道"></span>
<span class="m-icon m-next btn3" title="换曲"></span>
</div>
<div class="music-control">
<span class="m-icon m-xunhuan colored"></span>
<span class="m-icon m-radom colored"></span>
</div>
</div>
</div>

여기에는 CSS 코드를 작성하지 않겠습니다. 소스 파일을 직접 보거나 개발자 도구에서 볼 수 있습니다. 질문이 있으시면 개인적으로 메시지를 보내주실 수 있습니다.

js part
Code 1(재생 제어):

//播放控制
var myAudio = $("audio")[0];
// 播放/暂停控制
$(".btn1").click(function(){
if (myAudio.paused) {
play()
} else {
pause()
}
});
// 频道切换
$(".btn2").click(function(){
getChannel();
});
// 播放下一曲音乐
$(".btn3").click(function(){
getmusic();
});
function play(){
myAudio.play();
$(&#39;.btn1&#39;).removeClass(&#39;m-play&#39;).addClass(&#39;m-pause&#39;);
}
function pause(){
myAudio.pause();
$(&#39;.btn1&#39;).removeClass(&#39;m-pause&#39;).addClass(&#39;m-play&#39;);
}

Code 2(Douban FM 음악을 얻기 위한 ajax):

//获取随机频道信息
function getChannel(){
$.ajax({
url: &#39;http://api.jirengu.com/fm/getChannels.php&#39;,
dataType: &#39;json&#39;,
Method: &#39;get&#39;,
success: function(response){
var channels = response.channels;
var num = Math.floor(Math.random()*channels.length);
var channelname = channels[num].name;//获取随机频道的名称
var channelId = channels[num].channel_id;//获取随机频道ID
$(&#39;.record&#39;).text(channelname);
$(&#39;.record&#39;).attr(&#39;title&#39;,channelname);
$(&#39;.record&#39;).attr(&#39;data-id&#39;,channelId);//将频道ID计入data-id中
getmusic();
}
})
}
// 通过ajax获取歌曲
function getmusic(){
$.ajax({
url: &#39;http://api.jirengu.com/fm/getSong.php&#39;,
dataType: &#39;json&#39;,
Method: &#39;get&#39;,
data:{
&#39;channel&#39;: $(&#39;.record&#39;).attr(&#39;data-id&#39;)
},
success: function (ret) {
var resource = ret.song[0],
url = resource.url,
bgPic = resource.picture,
sid = resource.sid,//获取歌词的参数
ssid = resource.ssid,//获取歌词的参数
title = resource.title,
author = resource.artist;
$(&#39;audio&#39;).attr(&#39;src&#39;,url);
$(&#39;.musicname&#39;).text(title);
$(&#39;.musicname&#39;).attr(&#39;title&#39;,title)
$(&#39;.musicer&#39;).text(author);
$(&#39;.musicer&#39;).attr(&#39;title&#39;,author)
$(".background").css({
&#39;background&#39;:&#39;url(&#39;+bgPic+&#39;)&#39;,
&#39;background-repeat&#39;: &#39;no-repeat&#39;,
&#39;background-position&#39;: &#39;center&#39;,
&#39;background-size&#39;: &#39;cover&#39;,
});
play();//播放
}
})
};

참고: Douban은 액세스를 제한하므로 93f0f5c25f18dab9d176bd4f6de5d30e 태그 추가 f92061d5604e29b283bed79e420fcc50

코드 3(진행률 표시줄 제어):

setInterval(present,500)    //每0.5秒计算进度条长度
$(".basebar").mousedown(function(ev){  //拖拽进度条控制进度
var posX = ev.clientX;
var targetLeft = $(this).offset().left;
var percentage = (posX - targetLeft)/400100;
myAudio.currentTime = myAudio.duration * percentage/100;
});
function present(){
var length = myAudio.currentTime/myAudio.duration100;
$(&#39;.progressbar&#39;).width(length+&#39;%&#39;);//设置进度条长度
//自动下一曲
if(myAudio.currentTime == myAudio.duration){
getmusic()
}
}

html5의 오디오 태그 자체는 여기에서 진행률 표시줄 기능과 볼륨 제어 기능을 제공합니다. 인터페이스를 보기 좋게 만들기 위해 진행률 표시줄을 설정했습니다. 볼륨 컨트롤은 아직 추가되지 않았습니다.

이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

관련 읽기:

브라우저를 편집기로 전환하는 방법

Python을 사용하여 이미지 유사성을 확인하는 방법

이미지 다운로드를 위한 javascript 스크립트

위 내용은 가장 간단한 프런트 엔드 기술을 사용하여 간단한 음악 플레이어 만들기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.