0

$("#audio_2ndplaylist").click(function(){ を使用して、jPlayer が使用している src="" データ (つまり、ソース URL を含む JSON 形式のデータ) をユーザーが交換できるようにしたいと考えています。 . 私の主な問題は、この 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

そして、これが click.(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 が使用している JSON オブジェクトを「data」から「data2」に切り替えるための助けがあれば、大歓迎です。

4

1 に答える 1

0

私が思うことがいくつかあります:

  1. jPlayerPlaylist に名前を付けません (たとえば、var jplay = new jPlayerPlaylist(); のように)。このように、2 番目のスクリプトのように jPlayerPlaylist インスタンスにアクセスできます。
  2. いくつかのトラックを追加する正しい関数は add() または setPlaylist() です

Csq : jplay は唯一の公開変数です。2 番目のスクリプトでインスタンス化する必要はありません。

2 つのスクリプトは次のようになります。

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

そして2番目のもの:

$('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

これが役立つことを願っています:-)

于 2011-09-25T15:28:23.020 に答える