访问整个页面中的jplayer实例,以根据用户点击加载数据

时间:2011-09-16 14:07:04

标签: javascript jquery json instance jplayer

我希望能够使用$(“#audio_2ndplaylist”)。click(function(){允许用户交换jPlayer正在使用的src =“”数据(即包含JSON格式的数据)源URL。我认为我的主要问题是我不知道如何在我初始化它之外引用这个jPlayer对象.jPlayer站点文档说使用$(“#jplayer_id”)。data(“jPlayer”但到目前为止,这对我没用。

这是我初始化jPlayer的代码:

var data= [ {title:"Cro Magnon Man",
    artist:"The Stark Palace",
    mp3:'http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3'            
                },
    {title:"Your Face",
    artist:"The Stark Palace",
    mp3:"http://www.jplayer.org/audio/mp3/TSP-05-Your_face.mp3",
                }];

    new jPlayerPlaylist({
    jPlayer: "#jplayer_id",
}, data,
 {
    supplied: "webmv, ogv, m4v, oga, mp3, mov, mp4" 
}); // end of jPlayerPlaylist instance

这是我的点击代码。(function(){//紧跟在我脚本中的上述代码之后:

$('audio_2ndplaylist').click(function() {

var data2=[ {title:"Hidden",
    artist:"Miaow",
    mp3:"http://www.jplayer.org/audio/mp3/Miaow-02-Hidden.mp3",
    },
            {title:"Tempered Song",
    artist:"Miaow",
    mp3:"http://www.jplayer.org/audio/mp3/Miaow-01-Tempered-song.mp3",
    }]; 

var jplay=$("#jplayer_id").data("jPlayer");
jplay.load(data2); 

}); // end of click function

对于jPlayer正在使用的“数据”和“data2”来切换JSON对象的任何帮助都将非常感激,

1 个答案:

答案 0 :(得分:0)

我认为有几件事情:

  1. 您没有为jPlayerPlaylist命名(例如var jplay = new jPlayerPlaylist();)。像这样,您可以像在第二个脚本中那样访问jPlayerPlaylist实例。
  2. 添加一些曲目的正确功能是add()或setPlaylist()
  3. Csq:jplay是唯一的公共var,您不必在第二个脚本中实例化。

    现在你的两个脚本是:

    var data= [ {title:"Cro Magnon Man",
        artist:"The Stark Palace",
        mp3:'http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3'            
                    },
        {title:"Your Face",
        artist:"The Stark Palace",
        mp3:"http://www.jplayer.org/audio/mp3/TSP-05-Your_face.mp3",
                    }];
    
    var jplay = new jPlayerPlaylist({
        jPlayer: "#jplayer_id",
        }, data,
        {
            supplied: "webmv, ogv, m4v, oga, mp3, mov, mp4" 
    }); // end of jPlayerPlaylist instance
    

    第二个:

    $('audio_2ndplaylist').click(function() {
    
    var data2=[ {
        title:"Hidden",
        artist:"Miaow",
        mp3:"http://www.jplayer.org/audio/mp3/Miaow-02-Hidden.mp3",
        },
        {
        title:"Tempered Song",
        artist:"Miaow",
        mp3:"http://www.jplayer.org/audio/mp3/Miaow-01-Tempered-song.mp3",
    }]; 
    
    jplay.add(data2); 
    
    }); // end of click function
    

    希望这会有所帮助: - )