2012-09-20 15 views
9

In realtà ero in grado di riprodurre la musica in modo continuo attraverso le pagine senza ricaricare, utilizzando i frame (so che la riproduzione musicale continua non è una buona idea ma il client lo ha davvero richiesto, quindi non avevo scelta). Ecco quello che ho usato per la cornice con la riproduzione di musica:Riproduzione continua di musica con il nome

<body> 
    <div id="player"> 
    <audio id="audio" controls="controls" autoplay="autoplay" loop="loop" style="width:150px;"> 
     <source src="martnalia05namoracomigo.ogg" type="audio/ogg" /> 
     <source src="martnalia05namoracomigo.mp3" type="audio/mp3" /> 
     <embed src="martnalia05namoracomigo.mp3" hidden="true" loop="TRUE" autostart="TRUE"></embed> 
    </audio> 
    </div> 
</body> 

Ho inserito questa musica solo per testare, e vorrei sapere se è possibile fare un elenco di riproduzione e se è possibile informare la musica che attualmente sta giocando con un link e un pulsante per saltare una musica, ad esempio:

[player] 
| button previous | button to play/pause | button next 
| name of the music (link to the page of the Album) | 
[end of player] 

Qualche suggerimento?

+0

Non è necessario l'uso dei frame - si può avere il vostro contenitore contenuti recuperare i dati in modo asincrono con AJAX e popolare in questo modo. BackboneJS e Spine sono entrambe ottime soluzioni per quel tipo di app web. – AlienWebguy

+0

Non sono sicuro che sarò in grado di usarlo, perché in realtà sto usando una base pre-made per il mio sito, sto usando questo: jumpseller.com e il mio sito web è questo: http: //biscoitofino.jumpseller.com/ Non so se posso effettivamente modificare la navigazione in questo sistema poiché ho un accesso limitato per i codici. La mia idea era di usare il lettore musicale in una cornice sopra e il contenuto vero web nella cornice sottostante. –

+0

Che sito è questo? Voglio assicurarmi che non ci vada mai. – Joe

risposta

0

Probabilmente dovrai utilizzare un plug-in per lettore multimediale. Prova Leanback giocatore:

http://leanbackplayer.com/ + http://leanbackplayer.com/player_extensions.html (XSPF audio Playlist estensione)

E 'HTML5/CSS/JS con un'opzione di ripiego Flash così si dovrebbe essere in grado per lo stile in base alle proprie esigenze abbastanza facilmente.

+0

Ciao e grazie per la tua risposta Jim, quindi dimmi, pensi che questa sia un'opzione migliore rispetto all'uso dei frame nel mio caso (considerando che non posso usare AJAX con il sistema che ho) per far suonare la musica continuamente ?? –

+0

Dato che non è possibile personalizzare la pagina abbastanza da aggiungere abbastanza JavaScript, direi che l'unica opzione è quella di restare con i frame. – gfyans

+0

Se non foste così limitati potreste seguire la rotta delle app a pagina singola, http://en.wikipedia.org/wiki/Single-page_application, quindi la pagina non si aggiorna mai, richiedete solo il nuovo contenuto quando un utente fa clic su un link nella tua navigazione. Il tuo lettore multimediale rimane acceso tutto il tempo. Fai uno scavo intorno all'ipem.La fonte di com, non sono sicuro di come abbiano cambiato i loro URL senza usare un # (le app di una singola pagina non sono il mio genere), ma funziona alla grande. Per motivi di interesse, perché non puoi usare AJAX? Se non puoi aggiungere JS al tuo sito non sarai in grado di utilizzare LeanBack. – gfyans

1

Forse stai facendo un piccolo lettore multimediale forse, se questo è il caso ci sono un sacco di script pronti disponibili per aiutarti a realizzare questo. (Google è tuo amico).

Se decidi di andare avanti da solo qui ci sono i miei pensieri, possono aiutarti nella giusta direzione.

var data = [{audiourl: "filename1.mp3", artisturl:"http://example.com",name:"Song name"}, 
      {audiourl: "filename1.mp3", artisturl:"http://example.com",name:"Song name"}]; 

Una sorta di struttura dati per memorizzare i dettagli delle tracce.

var audio = document.getElementById("audio"); 
audio.addEventListener('ended', playNext); 

Infine qualche funzione per gestire la commutazione di brani

var currentTrack = 0; 
function playNext(options){ 
    currentTrack++; 
    if (currentTrack > data.length){ 
     currentTrack = 0; 
    } 
    var audiosrc = document.getElementById('embed_element_id') // or some other selector method 
    audiosrc.src = data[currentTrack].audiourl; 
    audiosrc.play(); 
} 

Im non del tutto sicuro sulla specifica audio HTML5 ma i assumerebbe suo lungo queste linee.

Spero che questo aiuti

Problemi correlati