基本信息
源码名称:瓦客音乐
源码大小:0.49M
文件格式:.zip
开发语言:CSS
更新时间:2025-02-08
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
这个源码在这之前有好几个人找我分享,然后都分享给了他们,一个一个的发有点麻烦,我索性就直接分享在博客里面,大家可以免费下载使用,这个音乐源码还是挺炫酷的,里面的音乐可以在index.html里面替换。觉得可以的话不妨在下方评论留下你的足迹。
这个源码在这之前有好几个人找我分享,然后都分享给了他们,一个一个的发有点麻烦,我索性就直接分享在博客里面,大家可以免费下载使用,这个音乐源码还是挺炫酷的,里面的音乐可以在index.html里面替换。觉得可以的话不妨在下方评论留下你的足迹。
(function($){
// Settings
var repeat = localStorage.repeat || 0,
shuffle = localStorage.shuffle || 'false',
continous = true,
autoplay = true,
playlist = [
{
title: 'Arston,Jake Reese - Circle Track (Radio Edit)',
artist: 'Arston,Jake Reese',
album: 'Arston,Jake Reese - Circle Track (Radio Edit).mp3',
cover:'img/1.jpg',
mp3: 'mp3/Arston,Jake Reese - Circle Track (Radio Edit).mp3',
ogg: ''
},
{
title: 'Every Chance We Get We Run ',
artist: 'David Guetta,Alesso',
album: 'David Guetta,Alesso - Every Chance We Get We Run .mp3',
cover: 'img/2.jpg',
mp3: 'mp3/David Guetta,Alesso - Every Chance We Get We Run (feat. Tegan & Sara).mp3',
ogg: ''
},
{
title: ' Life',
artist: '7obu - Tobu',
album: '7obu - Tobu - Life.mp3',
cover: 'img/3.jpg',
mp3: 'mp3/7obu - Tobu - Life.mp3',
ogg: ''
},
];
// Load playlist
for (var i=0; i<playlist.length; i ){
var item = playlist[i];
$('#playlist').append('<li>' item.artist ' - ' item.title '</li>');
}
var time = new Date(),
currentTrack = shuffle === 'true' ? time.getTime() % playlist.length : 0,
trigger = false,
audio, timeout, isPlaying, playCounts;
var play = function(){
audio.play();
$('.playback').addClass('playing');
timeout = setInterval(updateProgress, 500);
isPlaying = true;
}
var pause = function(){
audio.pause();
$('.playback').removeClass('playing');
clearInterval(updateProgress);
isPlaying = false;
}
// Update progress
var setProgress = function(value){
var currentSec = parseInt(value%60) < 10 ? '0' parseInt(value%60) : parseInt(value%60),
ratio = value / audio.duration * 100;
$('.timer').html(parseInt(value/60) ':' currentSec);
$('.progress .pace').css('width', ratio '%');
$('.progress .slider a').css('left', ratio '%');
}
var updateProgress = function(){
setProgress(audio.currentTime);
}
// Progress slider
$('.progress .slider').slider({step: 0.1, slide: function(event, ui){
$(this).addClass('enable');
setProgress(audio.duration * ui.value / 100);
clearInterval(timeout);
}, stop: function(event, ui){
audio.currentTime = audio.duration * ui.value / 100;
$(this).removeClass('enable');
timeout = setInterval(updateProgress, 500);
}});
// Volume slider
var setVolume = function(value){
audio.volume = localStorage.volume = value;
$('.volume .pace').css('width', value * 100 '%');
$('.volume .slider a').css('left', value * 100 '%');
}
var volume = localStorage.volume || 0.5;
$('.volume .slider').slider({max: 1, min: 0, step: 0.01, value: volume, slide: function(event, ui){
setVolume(ui.value);
$(this).addClass('enable');
$('.mute').removeClass('enable');
}, stop: function(){
$(this).removeClass('enable');
}}).children('.pace').css('width', volume * 100 '%');
$('.mute').click(function(){
if ($(this).hasClass('enable')){
setVolume($(this).data('volume'));
$(this).removeClass('enable');
} else {
$(this).data('volume', audio.volume).addClass('enable');
setVolume(0);
}
});
// Switch track
var switchTrack = function(i){
if (i < 0){
track = currentTrack = playlist.length - 1;
} else if (i >= playlist.length){
track = currentTrack = 0;
} else {
track = i;
}
$('audio').remove();
loadMusic(track);
if (isPlaying == true) play();
}
// Shuffle
var shufflePlay = function(){
var time = new Date(),
lastTrack = currentTrack;
currentTrack = time.getTime() % playlist.length;
if (lastTrack == currentTrack) currentTrack;
switchTrack(currentTrack);
}
// Fire when track ended
var ended = function(){
pause();
audio.currentTime = 0;
playCounts ;
if (continous == true) isPlaying = true;
if (repeat == 1){
play();
} else {
if (shuffle === 'true'){
shufflePlay();
} else {
if (repeat == 2){
switchTrack( currentTrack);
} else {
if (currentTrack < playlist.length) switchTrack( currentTrack);
}
}
}
}
var beforeLoad = function(){
var endVal = this.seekable && this.seekable.length ? this.seekable.end(0) : 0;
$('.progress .loaded').css('width', (100 / (this.duration || 1) * endVal) '%');
}
// Fire when track loaded completely
var afterLoad = function(){
if (autoplay == true) play();
}
// Load track
var loadMusic = function(i){
var item = playlist[i],
newaudio = $('<audio>').html('<source src="' item.mp3 '"><source src="' item.ogg '">').appendTo('#player');
$('.cover').html('<img src="' item.cover '" alt="' item.album '">');
$('.tag').html('<strong>' item.title '</strong><span class="artist">' item.artist '</span><span class="album">' item.album '</span>');
$('#playlist li').removeClass('playing').eq(i).addClass('playing');
audio = newaudio[0];
audio.volume = $('.mute').hasClass('enable') ? 0 : volume;
audio.addEventListener('progress', beforeLoad, false);
audio.addEventListener('durationchange', beforeLoad, false);
audio.addEventListener('canplay', afterLoad, false);
audio.addEventListener('ended', ended, false);
}
loadMusic(currentTrack);
$('.playback').on('click', function(){
if ($(this).hasClass('playing')){
pause();
} else {
play();
}
});
$('.rewind').on('click', function(){
if (shuffle === 'true'){
shufflePlay();
} else {
switchTrack(--currentTrack);
}
});
$('.fastforward').on('click', function(){
if (shuffle === 'true'){
shufflePlay();
} else {
switchTrack( currentTrack);
}
});
$('#playlist li').each(function(i){
var _i = i;
$(this).on('click', function(){
switchTrack(_i);
});
});
if (shuffle === 'true') $('.shuffle').addClass('enable');
if (repeat == 1){
$('.repeat').addClass('once');
} else if (repeat == 2){
$('.repeat').addClass('all');
}
$('.repeat').on('click', function(){
if ($(this).hasClass('once')){
repeat = localStorage.repeat = 2;
$(this).removeClass('once').addClass('all');
} else if ($(this).hasClass('all')){
repeat = localStorage.repeat = 0;
$(this).removeClass('all');
} else {
repeat = localStorage.repeat = 1;
$(this).addClass('once');
}
});
$('.shuffle').on('click', function(){
if ($(this).hasClass('enable')){
shuffle = localStorage.shuffle = 'false';
$(this).removeClass('enable');
} else {
shuffle = localStorage.shuffle = 'true';
$(this).addClass('enable');
}
});
})(jQuery);