为音乐播放列表创建一个包含多个选项的数组
Posted
技术标签:
【中文标题】为音乐播放列表创建一个包含多个选项的数组【英文标题】:Make an array with multiple options for music playlist 【发布时间】:2011-10-12 20:00:14 【问题描述】:我正在尝试使用该标签制作 html5 播放列表。我想将所有歌曲、它们的名称、描述等存储在一个数组中。不过我不知道如何很好地使用数组。
我现在的想法是这样的:
var songBase = '/songs/'
var playlist = ;
playlist =
'Bleeding Love' : 'Bleeding_love.mp3',
'Don\'t Forget' : 'Dont_forget.mp3',
'Finish' : 'Finish.mp3',
'In the Rain' : 'In_the_rain.mp3',
'Ready to Fall' : 'Ready_to_fall.mp3',
'Realize' : 'Realize.mp3',
'Righted All Your Wrongs' : 'Righted_all_your_wrongs.mp3',
'These Walls' : 'These_walls.mp3'
我真正需要做的是有两个以上的选择。我什至不知道如何从已有的数组中提取任何数据。
有什么想法吗?
【问题讨论】:
【参考方案1】:从技术上讲,您在那里使用的是对象字面量 (),而不是数组 ([])。
您可以根据自己的目的使用对象字面量数组。
var playlist = [
name: "Bleeding Love",
file_name: "Bleeding_love.mp3"
,
name: "Don't Forget",
file_name: "Dont_forget.mp3"
]
然后您可以像这样访问这些:
playlist[1].file_name
或者在循环中:
for (var i=0; i<playlist.length; i++) # i is array index
for (var k in playlist[i]) # k is the key
console.log(k+': '+playlist[i][k]);
【讨论】:
知道为什么这会返回错误Uncaught TypeError: Object #<HTMLAudioElement> has no method 'attr'
var $player = $("audio#music-player")[0]; var i = 0; var curSong = playlist[i].src; $(".play-bt").click(function() $player.attr("src",curSong); );
没有看到你的页面结构。发jsfiddle.net,我去看看。以上是关于为音乐播放列表创建一个包含多个选项的数组的主要内容,如果未能解决你的问题,请参考以下文章