无法(以编程方式)将歌曲添加到播放列表

时间:2012-10-24 15:50:57

标签: javascript jquery jplayer

我是JavaScript的新手,所以对于有经验的人来说,我的问题可能很容易解决。我和一些朋友正在制作音乐博客,我正在尝试使用jPlayer创建自己的自定义音乐播放器。

我想要一个简单的JavaScript函数,你提供歌曲和mp3的标题,它将自己添加到jPlayer播放列表中。这是我的JavaScript函数......

function add_song(title, mp3)
{
    myPlaylist.add({
        title:"Tempered Song",
        mp3:"http://www.jplayer.org/audio/mp3/Miaow-01-Tempered-song.mp3"
    });
}

我希望能够使用此代码在我身体的任何地方调用该函数...

<script>
    add_song("Your Face", "http://www.jplayer.org/audio/mp3/TSP-05-Your_face.mp3");
</script>

然而,这实际上并没有添加这首歌。我猜这与必须在$(document).ready()函数中设置jPlayerPlaylist有关。当我尝试调用add_song()时,我猜测我的变量“myPlaylist”未正确初始化。就像我说的,我是JavaScript的新手,所以试着让它变得简单。

您可以查看my website处的代码,以便更好地指导我解决问题。谢谢!

1 个答案:

答案 0 :(得分:0)

问题确实是您在呼叫jPlayerPlaylist之后设置了add_song 。浏览器遇到它们时会阻塞并运行<script>标记中的Javascript代码,这在document.onload之前会触发jQuery等效。

你到底想要完成什么?你是否真的想在页面加载时加载一些硬编码的播放列表元素,或者你真的想将它们附加到按钮或链接上吗?对于前者,将函数调用移动到onload函数,对于后者,创建新的事件处理函数并将它们附加到适当的元素。

如果您真的只是想在地址栏中手动提供功能,那么它应该可以正常工作。在页面加载之前它根本不起作用。