オーディオ プレーヤーである Jplayer に問題があります。isPaused へのアクセスに問題があります。私が必要としているのは、プレーヤーの再生中に div の背景画像を変更する必要があることです。2 つのテスト スクリプトがありますが、どちらも正常に動作していません。
私のプレーヤー
var myCirclePlayer = new CirclePlayer("#jquery_jplayer_1",
{
mp3: "/media/audio/RelaxSeg.mp3",
}, {
supplied: "mp3",
cssSelectorAncestor: "#cp_container_1",
swfPath: "/jQuery.jPlayer.2.2.0/v11/js",
wmode: "window"
});
私のコンテナ。
<div id="jquery_jplayer_1" class="cp-jplayer"></div>
<div id="cp_container_1" class="cp-container" style="background:none;">
<img id="bg_image" class="bg_image1" src="/jQuery.jPlayer.2.2.0/v11/circle.skin/jplayer_bg_img.png" height="60" />
<div class="cp-progress-holder"> <!-- .cp-gt50 only needed when progress is > than 50% -->
<div class="cp-progress-1"></div>
<div class="cp-progress-2"></div>
</div>
<div class="cp-circle-control"></div>
<ul class="cp-controls">
<li><a id="play1" class="cp-play" tabindex="1">play</a></li>
<li><a id="pause1" class="cp-pause" style="display:none;" tabindex="1">pause</a></li> <!-- Needs the inline style here, or jQuery.show() uses display:inline instead of display:block -->
</ul>
</div>
これは機能するはずですが、何らかの理由で機能しません。
if($("#jquery_jplayer_1").data("jPlayer").status.isPlaying) {
$(".bg_image1").attr("src", "/jQuery.jPlayer.2.2.0/v11/circle.skin/jplayer_bg_image_green.png");
}
else {
$(".bg_image1").attr("src", "/jQuery.jPlayer.2.2.0/v11/circle.skin/jplayer_bg_img.png");
}
また、プレーヤーが再生されていないときは一時停止ボタンが表示されず、プレーヤーが再生されているときはそのスタイルが display=block になるコードもあります。
if(document.getElementById("pause1").style.display = "block") {
$(".bg_image1").attr("src", "/jQuery.jPlayer.2.2.0/v11/circle.skin/jplayer_bg_image_green.png");
}
if(document.getElementById("pause1").style.display = "none") {
$(".bg_image1").attr("src", "/jQuery.jPlayer.2.2.0/v11/circle.skin/jplayer_bg_img.png");
}
コードのブロックについてはお詫びしますが、何も残したくありませんでした。