我是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处的代码,以便更好地指导我解决问题。谢谢!
答案 0 :(得分:0)
问题确实是您在呼叫jPlayerPlaylist
之后设置了add_song
。浏览器遇到它们时会阻塞并运行<script>
标记中的Javascript代码,这在document.onload
之前会触发jQuery等效。
你到底想要完成什么?你是否真的想在页面加载时加载一些硬编码的播放列表元素,或者你真的想将它们附加到按钮或链接上吗?对于前者,将函数调用移动到onload函数,对于后者,创建新的事件处理函数并将它们附加到适当的元素。
如果您真的只是想在地址栏中手动提供功能,那么它应该可以正常工作。在页面加载之前它根本不起作用。