jQueryを使用してJW FLVプレーヤーを制御する
-
22-07-2019 - |
質問
JW FLVプレーヤーのインスタンスを制御しようとしています jqueryを使用するプレーヤー。
やりたいことは、クリックするとXMLプレイリストをプレーヤーにロードする一連のリンクを作成することです。
チュートリアルこちら基本的に機能性の点で望むように動作するようになりましたが、現時点ではアンカーが次のように見えるため、それはsinいことであることがわかります。
<a class="media" href="#"
onclick="player.sendEvent('STOP');
player.sendEvent('LOAD',
'path/to/playlist.xml');
return false;">load playlist</a>
これはプレーヤーの参照を取得します
var player = null;
function playerReady(obj)
{
player = gid(obj.id);
};
function gid(name)
{
return document.getElementById(name);
};
できるようにしたいのは、アンカーを次のようにすることです:
<a class="media" href="#" rel="path/to/playlist.xml">load playlist</a>
次に、jqueryを使用してclass =&quot; media&quot;のアンカーを見つけ、要素のrel属性の値を読み取り、適切な関数をトリガーするクリックイベントをバインドします。残念ながら、これは私の非常に貧弱な力を超えています。
これまでのところ:
$('a.media').click(function()
{
playlist = $(this).attr("rel");
player.sendEvent('LOAD', playlist
}
);
これは明らかに機能しません。誰でもばか/ n00bを助けたいですか?
私が本当にやりたいのは、他の誰かにそれをやらせるだけではなく、学ぶだと言うべきです。 >
解決
あなたがしていることは私には正しいように思えますが、変数「プレイヤー」は確かではありません。そこで定義されています。コンテキストに依存します。
できることは次のようなものです
$('a.media').click(function () {
var player = $("#player-id");
if(player.length == 1){
player = player[0];
var playlist = $(this).attr("rel");
player.sendEvent('LOAD', playlist);
}
});
他のヒント
player.sendEvent('LOAD', playlist
}
);
ブラケットのネストを確認します。
そうでなければ、動作するはずです。しかし、&#8216; rel&#8217; URLは既知のトークン。なぜそれを&#8216; href&#8217;に入れないのかどこに期待しますか?あなたはただ&#8216; falseを返す必要があります&#8217;または&#8216; preventDefault&#8217;なめる後にリンクがたどられるのを停止します。
function playerReady(obj)
{
player = gid(obj.id);
};
function gid(name)
{
return document.getElementById(name);
};
えー、ここで完全に不要ではありませんか?なぜ&#8216; player = obj&#8217;だけではありませんか?
ここであなたと同じ問題を抱えています。
を使用して最初に呼び出すプレーヤーを作成することを認識していますvar newplayer = SWFobject(width,height,playerid,version,background-color);
newplayer.addVarible(...);
newplayer.write(htmltaghold place for this player);
正しく覚えていませんが、上記のコードのように、その後、jQueryの関数playerReady(thePlayer){}でvar player = window.document [thePlayer.id]を使用できます
jQuery("div#id").click(function(){
your code
player.sendEvent("NEXT");
});
player.sendEvent(&quot; PLAY&quot;); ..等。それについて話し、jQueryを改善できることを願っています