Buenas!
A ver si me explico bien, pues es la primera vez que uso JQuery (y Javascript, de hecho) y no tengo mucha idea...
Quiero poner un reproducotr de música en una página web. Encontré el jPlayer (http ://www.happyworm.com/jquery/jplayer) y me gustó la segunda demo (http ://www.happyworm.com/jquery/jplayer/latest/demo-02.htm), así que intenté copiarla.
Por lo visto, el jPlayer carga las playlists de la siguiente forma:
Código Javascript
:
Ver originalvar myPlayList = [
{name:"Tempered Song",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-01-Tempered-song.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-01-Tempered-song.ogg"},
{name:"Hidden",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-02-Hidden.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-02-Hidden.ogg"},
{name:"Lentement",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-03-Lentement.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-03-Lentement.ogg"},
{name:"Lismore",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-04-Lismore.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-04-Lismore.ogg"},
{name:"The Separation",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-05-The-separation.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-05-The-separation.ogg"},
{name:"Beside Me",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-06-Beside-me.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-06-Beside-me.ogg"},
{name:"Bubble",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-07-Bubble.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-07-Bubble.ogg"},
{name:"Stirring of a Fool",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-08-Stirring-of-a-fool.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-08-Stirring-of-a-fool.ogg"},
{name:"Partir",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-09-Partir.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-09-Partir.ogg"},
{name:"Thin Ice",mp3:"http://www.miaowmusic.com/audio/mp3/Miaow-10-Thin-ice.mp3",ogg:"http://www.miaowmusic.com/audio/ogg/Miaow-10-Thin-ice.ogg"}
];
Yo quiero cargar la playlist desde un archivo XML para podr hacer una playlist dinámica y no tener que estar modificando el archivo cada vez (además, así puedo cargar cosas desde una base de datos vía PHP). Miré por internet y encontré que podría hacerlo así:
Código Javascript
:
Ver originalvar myPlayList = [];
$.ajax({
type: "GET",
url: "playlist.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('song').each(function(){
var id = $(this).attr('id');
var title = $(this).find('title').text();
var mp3 = $(this).find('mp3').text();
var ogg = $(this).find('ogg').text();
var plays = $(this).find('plays').text();
document.write(id + " - ");
document.write(title);
document.write(" (" + mp3 + ", ");
document.write(ogg + ")");
document.write(" - " + plays + "<br />");
myPlayList.push({name:title,mp3:mp3,ogg:ogg,plays:plays});
});
}
});
el problema que tengo es que si salgo del bloque de código e intento mostrar algun valor de este array no me devuelve nada:
Código Javascript
:
Ver original$(document).ready(function(){
var playItem = 0;
var myPlayList = [];
$.ajax({
type: "GET",
url: "playlist.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('song').each(function(){
var id = $(this).attr('id');
var title = $(this).find('title').text();
var mp3 = $(this).find('mp3').text();
var ogg = $(this).find('ogg').text();
var plays = $(this).find('plays').text();
document.write(id + " - ");
document.write(title);
document.write(" (" + mp3 + ", ");
document.write(ogg + ")");
document.write(" - " + plays + "<br />");
myPlayList.push({name:title,mp3:mp3,ogg:ogg,plays:plays});
});
}
});
document.write(myPlayList[0].name);
Esto, por ejemplo, no muestra nada.
La estructura XML es:
Código XML:
Ver original<songs>
<song id="0">
<title>Tramaran anar a Mart</title>
<mp3>tramaran.mp3</mp3>
<ogg>tramaran.ogg</ogg>
<plays>328</plays>
</song>
<song id="1">
<title>Les Quatre Estacions</title>
<mp3>quatreestacions.mp3</mp3>
<ogg>quatreestacions.ogg</ogg>
<plays>122</plays>
</song>
<song id="2">
<title>D'aquí 5 anys</title>
<mp3>5anys.mp3</mp3>
<ogg>5anys.ogg</ogg>
<plays>299</plays>
</song>
</songs>
Resumiendo, quería substituir el array "myPlayList" por otro array igual pero que obtenga valores a través de XML... Alguna ayudita, por favor?