4

この質問をすることはインターネットの周りで時々尋ねられるかもしれないので申し訳ありませんが、提案された解決策のどれも私のサイトではうまくいきませんでした。

私は(大学のプロジェクトの一部として)jPlayerをラジオストリームで宣伝しようとしています。

jPlayerのJavaScript-jQuery部分をfunctions.jsというファイルに含めました。

// Reproductor de audio

$(document).ready(function(){

var stream = {
    title: "Postaway Radio",
    mp3: "http://listen.radionomy.com/1-PostawayRadio"
},
ready = false;

$("#jquery_jplayer_1").jPlayer({
    ready: function (event) {

        ready = true;
        $(this).jPlayer("setMedia", stream);
    },
    pause: function() {
        $(this).jPlayer("clearMedia");
    },
    error: function(event) {
        if(ready && event.jPlayer.error.type === $.jPlayer.error.URL_NOT_SET) {
            $(this).jPlayer("setMedia", stream).jPlayer("play");
        }
    },
    swfPath: "js",
    supplied: "mp3",
    preload: "none",
        wmode: "window"
});

});

そして、これはテキストのHTML部分です。

            <div id="jquery_jplayer_1" class="jp-jplayer"></div>

        <div id="jp_container_1" class="jp-audio-stream">
            <div class="jp-type-single">
                <div class="jp-gui jp-interface">
                    <ul class="jp-controls">
                        <li><a href="javascript:;" class="jp-play" tabindex="1">play</a></li>
                        <li><a href="javascript:;" class="jp-pause" tabindex="1">pause</a></li>
                        <li><a href="javascript:;" class="jp-mute" tabindex="1" title="mute">mute</a></li>
                        <li><a href="javascript:;" class="jp-unmute" tabindex="1" title="unmute">unmute</a></li>
                        <li><a href="javascript:;" class="jp-volume-max" tabindex="1" title="max volume">max volume</a></li>
                    </ul>
                    <div class="jp-volume-bar">
                        <div class="jp-volume-bar-value"></div>
                    </div>
                </div>
                <div class="jp-title">
                    <ul>
                        <li>Postaway Radio</li>
                    </ul>
                </div>
                <div class="jp-no-solution">
                    <span>Update Required</span>
                    To play the media you will need to either update your browser to a recent version or update your <a href="http://get.adobe.com/flashplayer/" target="_blank">Flash plugin</a>.
                </div>
            </div>
        </div>

再生してみましたが、まったく動作しません。FireZillaで次のエラーが発生します。

 TypeError: $("#jquery_jplayer_1").jPlayer is not a function

Chromeコンソールは次のエラーをスローします:

Uncaught TypeError: Object [object Object] has no method 'jPlayer' 
(anonymous function) functions.js:11
l jquery-1.8.3.min.js:2
c.fireWith jquery-1.8.3.min.js:2
v.extend.ready jquery-1.8.3.min.js:2
A

そして、この行を問題として示します。

`enter code here`$("#jquery_jplayer_1").jPlayer({

そしてもう1つはjQueryです。

しかし、私は問題が何であるかを見つけることができません。

jPlayerデモをダウンロードしましたが、コードは似ています-私のものと同じですが、動作し、私のWebページにはありません。開発者(jPlayer)も調べましたが、解決策が見つかりませんでした。

誰か助けてくれませんか?

ご協力いただきありがとうございます

4

2 に答える 2

3

おそらくjplayerライブラリが含まれていませんでした。デモをもう一度確認して、jplayerjsファイルが正しく読み込まれたかどうかを確認してください。そして、GoogleChromeのコンソールを確認してください。

そして、どのブラウザを使用していますか。ブラウザがhtml5をサポートしていない場合、Flash Playerが読み込まれますが、swfファイルのアドレスが適切でない可能性があります。これは、このパラメーターswfPathで設定されます: "js"

これで試してください:

$player = $("#jquery_jplayer_1")
jPlayer_method = $player.jPlayer
$player.jPlayer({
    ready: function () {
           jPlayer_method.call( $player, "setMedia", {
                                       [...same as before...]
于 2012-12-27T13:39:57.477 に答える