2

私たちのユーザーは IE7 を使用しており、ディスパッチャーへの警告メッセージがある場合は音を鳴らす必要があります。

これは、ページが読み込まれると問題なく動作しますが、ディスパッチャーがページを開いたままにし、メッセージが以前に受信されて応答された場合....新しいメッセージを受信すると、サウンドが機能しないようです。

jPlayer の使用で何が間違っていますか? メッセージがある限り、サウンドを連続して再生したいだけです。

私の Ajax コール

$.ajax({
    type: "POST",
    url: "/Messages/ViewMessages.aspx/GetMessages",
    data: "{messageId:" + 45 + "}",
    contentType: "application/json; charset=utf-8",
    cache: false,
    dataType: "json",
    timeout: 60000,
    success: function(data) {
        if (data.d.length > 0) {
            showPanic(data.d);
            var sound = "/JavaScript/jQuery/UI/js/Audio/Air Plane Ding-SoundBible.com496729130.mp3";
     playSound(sound);
        }
        else {
            $("#dialog").dialog("destroy");
        }

    }

function playSound(sound) {
            $("#jquery_jplayer_1").jPlayer({
                ready: function() {
                    $(this).jPlayer("setMedia", {
                        mp3: sound
                    }).jPlayer("play");
                },
                loop: true,
                swfPath: "/JavaScript/jQuery/UI/js/jQuery.jPlayer.2.1.0/Jplayer.swf",
                supplied: "mp3"
            });
            $("#jquery_jplayer_1").jPlayer("play");}
4

2 に答える 2

3

でこの変更を試してくださいplaySoundjsFiddle でコードを実行するには、ここをクリックしてください

function playSound(sound) {
    var $player = $("#jquery_jplayer_1");
    if ($player.data().jPlayer && $player.data().jPlayer.internal.ready === true) {
        $player.jPlayer("setMedia", {
            mp3: sound
        }).jPlayer("play");
    }
    else {
        $player.jPlayer({
            ready: function() {
                $(this).jPlayer("setMedia", {
                    mp3: sound
                }).jPlayer("play");
            },
            loop: true,
            swfPath: "/JavaScript/jQuery/UI/js/jQuery.jPlayer.2.1.0/Jplayer.swf",
            supplied: "mp3"
        });
    }
}
于 2011-12-10T22:40:28.220 に答える
0

私の jPlayer div は、Display:none を実装するクラス内にありました。これにより、jPlayer の再生、一時停止、停止機能へのアクセスが削除されます。

于 2011-12-12T17:40:48.710 に答える