Advertisement
info1atual

HTML5 & jQuery - Player com playlist pré-definida

Apr 29th, 2015
299
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 5 4.09 KB | None | 0 0
  1. <style>
  2.        
  3.     .content {
  4.       margin: 0 auto;
  5.       max-width: 720px;
  6.       padding: 12px 0;
  7.     }
  8.     .centro {
  9.       margin: 0 auto;
  10.       float: none !important;
  11.     }
  12.     .margin-0 {
  13.       margin: 0;
  14.     }
  15.  
  16.     #player {
  17.       width: 100%;
  18.     }
  19.     #title {
  20.       padding-left: 14px;
  21.       overflow: hidden;
  22.       height: 28px;
  23.       text-overflow: ellipsis;
  24.         white-space: nowrap;
  25.     }
  26.  
  27. </style>
  28.  
  29. <div class="container">
  30.    
  31.     <div class="content">
  32.        
  33.         <div class="row">
  34.            
  35.             {{-- {{ app_path() }} --}}
  36.             <div class="col-sm-6 centro">
  37.                
  38.                 <div class="col-xs-12">
  39.                    
  40.                     <h3 class="bold" id="title"></h3>
  41.                    
  42.                     <audio class="" id="player" autoplay controls preload>
  43.                          <source id="player-source" type="audio/mpeg"/>    
  44.                     </audio>
  45.  
  46.                 </div>
  47.  
  48.                 <div class="col-xs-6">
  49.                    
  50.                     <a id="link" class="btn btn-default" target="_blank" href="" title="Baixar"><i class="fa fa-download"></i></a>
  51.                    
  52.                 </div>
  53.                
  54.                 <div class="col-xs-6 text-right">
  55.                    
  56.                     <a href="#" id="btnSort" class="btn btn-warning clearfix " type="button" title="Sortear"><i class="fa fa-random"></i></a>
  57.                     <a href="#" id="btnNext" class="btn btn-default clearfix " type="button" title="Próxima"><i class="fa fa-fast-forward"></i></a>
  58.  
  59.                 </div>
  60.  
  61.             </div> <!-- fim centro -->
  62.            
  63.             <div class="clearfix"></div>
  64.  
  65.         </div> <!-- fim row -->
  66.  
  67.     </div> <!-- fim content -->
  68.  
  69. </div>
  70.  
  71.     <script>
  72.  
  73.         diretorio = "/pasta/subpasta";
  74.         musicas = [
  75.             "http://www.insejecangola.com/mp3/03%20Fiel%20A%20Mim.mp3",
  76.             "http://www.insejecangola.com/mp3/02%20Fala%20Comigo.mp3",
  77.             "http://www.igrejabatistarestauracao.com/webroot/file/mixpod/Eyshila%20-%20Terremoto.mp3",
  78.             "http://www.igrejabatistarestauracao.com/webroot/file/mixpod/Eyshila%20-%20%C9%20Assim%20Que%20Eu%20Quero%20Te%20Adorar.mp3",
  79.             "http://www.cadecristo.com.br/GospelMusic/Eyshila/2-O_Deus_que_eu_amo.mp3"
  80.             ];
  81.  
  82.         titulos = [
  83.             "Fiel a mim",
  84.             "Fala comigo",
  85.             "Terremoto",
  86.             "É assim que eu quero te adorar",
  87.             "O Deus que eu amo"
  88.             ];
  89.  
  90.         ft = "";
  91.         qt = musicas.length
  92.         musicaAtual = 0;
  93.        
  94.         carregaMusica();
  95.  
  96.             $("#btnSort").click(function(e) {
  97.                 e.preventDefault();
  98.  
  99.                 ft = musicaAtual
  100.  
  101.                 faixa = rand(0,parseFloat(qt)-1);
  102.                
  103.                 if (faixa != musicaAtual || faixa != ft || musicaAtual != 0) {
  104.  
  105.                     musicaAtual = faixa;
  106.                    
  107.                 } else {
  108.  
  109.                     musicaAtual = 0
  110.  
  111.                 }
  112.  
  113.                 link = musicas[musicaAtual];
  114.                 $("#link").attr("href", link+"?=");
  115.                 $("#title").empty().html('<i class="fa fa-play"></i> '+titulos[musicaAtual]);
  116.  
  117.                 carregaMusica();
  118.                 // this.play();
  119.  
  120.             });
  121.  
  122.             $("#btnNext").click(function(e) {
  123.                 e.preventDefault();
  124.  
  125.                 faixa = musicaAtual
  126.                 faixa++
  127.                 musicaAtual = faixa
  128.  
  129.                 if (musicaAtual == qt) {
  130.                     musicaAtual = 0
  131.                 }
  132.  
  133.                 link = musicas[musicaAtual];
  134.                 $("#link").attr("href", link+"?=");
  135.                 $("#title").empty().html('<i class="fa fa-play"></i> '+titulos[musicaAtual]);
  136.  
  137.                 carregaMusica();
  138.                 // this.play();
  139.                
  140.             });
  141.  
  142.             document.getElementById('player').addEventListener('ended', function(){
  143.                 this.currentTime = 0;
  144.                 faixa = musicaAtual
  145.                 faixa++
  146.                 musicaAtual = faixa
  147.  
  148.                 if (musicaAtual == qt) {
  149.                     musicaAtual = 0
  150.                     // this.pause();
  151.                 }
  152.  
  153.                 link = musicas[musicaAtual];
  154.                 $("#link").attr("href", link+"?=");
  155.                 $("#title").empty().html('<i class="fa fa-play"></i> '+titulos[musicaAtual]);
  156.  
  157.                 carregaMusica();
  158.                 this.play();
  159.                
  160.             }, false);
  161.  
  162.         function carregaMusica() {
  163.            
  164.             $("#player-source").attr("src", musicas[musicaAtual]);
  165.             link = musicas[musicaAtual];
  166.             $("#link").attr("href", link+"?=");
  167.             $("#player").load();
  168.             $("#title").empty().html('<i class="fa fa-play"></i> '+titulos[musicaAtual]);
  169.  
  170.         }
  171.  
  172.         function rand(num_minimo,num_maximo) {
  173.        
  174.         return Math.floor((Math.random() * (num_maximo-num_minimo+1))+num_minimo);
  175.        
  176.         }
  177.  
  178.     </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement