1

Flowplayer フォーラムにクロス投稿しましたが、まだ応答がありません。ここの誰かが助けてくれることを願っています。

Playlist プラグインを使用してもまったく成功しません。http://flowplayer.org/plugins/javascript/playlist.htmlの例を詳しく調べたところ、最初のクリップは動作するようになりましたが、プレイリスト プラグインが登録されていないようです。ビデオが読み込まれて再生されるため、FlowPlayer は適切に読み込まれますが、プレイリストはプレイリスト オブジェクトに機能を追加しません。

プレイリスト スクリプトがロードされていることを確認しました:最初のコメント ブロックの直後で関数コードの開始前に、alert("playlist!");の先頭に追加しました。flowplayer.playlist-3.0.8.jsWeb ページを読み込むと、アラートが表示されます。flowplayer()縮小版または通常版のスクリプトを使用しても、またはで flowplayer 関数を呼び出しても、同じ結果が得られます$f()。と を使用flowplayer 3.2.3してplaylist 3.0.8います。

FlowPlayer とギャラリー内の 2 つのクリップをレンダリングしようとする非常に単純な静的ページを次に示します。 HTML ページを開き、FlowPlayer インスタンスでビデオを再生します。

FlowPlayer の呼び出しに構成パラメーターを追加してデフォルトのクリップを提供すると、そのクリップが再生されますが、ギャラリー リンクは、クリップを FlowPlayer にプッシュするのではなく、生のクリップに移動するだけです。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>test flowplayer</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" type="text/javascript"></script>
    <script src="/_library/script/flowplayer/flowplayer-3.2.3.min.js" type="text/javascript"></script>
    <script src="/_library/script/flowplayer/flowplayer.playlist-3.0.8.min.js" type="text/javascript"></script>
</head>
<body>
    <div id="player" style="display: block; width: 776px; height: 432px;"></div>
    <div id="gallery">
        <a href="/resources/video/Empowerment_TV30_776.mp4">video 1</a>
        <a href="/resources/video/Commercial_776.mp4">video 2</a>
    </div>
    <script type="text/javascript">
        $(function () {
            $f("player", "/_library/script/flowplayer/flowplayer-3.2.3.swf")
            .playlist("gallery");
        });
    </script>
</body>
</html>

私が間違っていることは何か分かりますか?詳細が必要な場合はお知らせください。

ありがとう!- ヴァル

4

3 に答える 3

0

$f("player", "/_library/script/flowplayer/flowplayer-3.2.3.swf").playlist("gallery");

多分?

.playlist()の関数ではありません$(function () {})

于 2010-08-25T17:26:03.593 に答える
0

わかりました。修正しました。

多くの例では、プレイリスト コンテナーのクラスを使用しています。クラスを使用した例では、プレイリスト関数に CSS セレクターが渡されます。通常は次のようなものです。playlist("div.gallery")

クラスを使用するようにマークアップを変更し、param をplaylist()完全修飾 CSS セレクターに変更したところ、機能しました!!!

ここで、クラスを使用したくありません。単一のプレイリスト要素があるため、ID を使用したいと考えています。マークアップを ID に戻しました。

<div id="gallery">
    <a href="video1">video1</a>
    <a href="video2">video2</a>
</div>

ID に CSS セレクターを使用するように呼び出し元を変更しました。

playlist("div#gallery");

そしてそれもうまくいきます!

最後に、プレイリスト ID を持つ要素を指定する必要があるかどうか疑問に思いましたが、必要ありません。CSS ID セレクターだけを指定できます。

playlist("#gallery");

私の問題は、メインのフロープレーヤースクリプトを使用すると、.または#のような修飾子なしでプレースホルダー要素に対処できることだったと思い$f("player")ます。の代わりに$f("#player");。しかし、Playlist プラグインはよりうるさいため、修飾子を使用する必要があります。

単一のキャラクターのためのすべての痛み!

于 2010-08-25T23:30:30.937 に答える
0
$(function () {})

loadイベントのイベントハンドラーを登録する方法です。このため、イベントがブラウザによって起動されるまでその中のコードは実行されloadず、プラグインがまだ利用できない可能性があります。

また、チュートリアルに厳密に従っていません。持っているコードはこんな感じ

$(function() {
    // setup player without "internal" playlists
    $f("player2", "http://releases.flowplayer.org/swf/flowplayer-3.2.3.swf", {
        clip: {baseUrl: 'http://blip.tv/file/get'} 
    // use playlist plugin. again loop is true
    }).playlist("div.petrol", {loop:true});
});

はではなく.playlistの戻り時に呼び出されることに注意してください。$f()$(function(){...})

于 2010-08-25T17:35:14.673 に答える