jQuery でトリガーされるプレーヤーがあります。1 つのページに複数のプレーヤーがある場合がありますが、ツールバーには 1 つの「miniPlayer」しかありません。別のプレーヤー イベントがトリガーされた場合、プレーヤー ツールバーは再生/一時停止などを行う必要があります。これを実現するには、プレーヤー要素内のクラスを置き換えるだけです。
ツールバーのプレーヤーには #miniPlayer の ID があり、他のすべてのプレーヤーは単に #player になります。これはスタイル用です。このため、プレーヤーのボタンがクリックされた場合、またはその逆の場合に miniPlayer のスタイルが変更されないように、要素内のクラスのみを置き換えることができます。
ミニプレーヤー (再生);
<a id="miniControls" class="play" href="" title=""></a>
となります;
<a id="miniControls" class="pause" href="" title=""></a>
miniPlayer の一時停止ボタンまたは通常のプレーヤーの一時停止ボタンのいずれかのオンクリック。
通常のプレーヤー (再生);
<a id="controls" class="play" href="" title=""></a>
となります;
<a id="controls" class="pause" href="" title=""></a>
miniPlayer の一時停止ボタンまたは通常のプレーヤーの一時停止ボタンのいずれかのオンクリック。
私が現在持っているjQueryは、通常のプレーヤー(再生)をクリックするとミニプレーヤーを置き換えます。
<a id="controls" class="pause" href="" title=""></a>
ただし、id はスタイルの miniControls のままにしておく必要があります。miniPlayer をクリックすると、これは逆になりますが同じ問題になります。
jquery スクリプトの再生/一時停止機能 (現時点では miniPlayer でのみ機能します):
play.live('click', function(e) {
e.preventDefault();
song.play();
$('.play').replaceWith('<a id="miniControls" class="pause" href="" title=""></a>');
$('.seek').attr('max',song.duration);
});
pause.live('click', function(e) {
e.preventDefault();
song.pause();
$('.pause').replaceWith('<a id="miniControls" class="play" href="" title=""></a>');
});
<a>
クラスのみを置き換える方法があるので、タグ全体ではなく $('.pause') を $('.play') に置き換えるだけです。jquery の Web サイトを調べましたが、何も見つかりませんでした。多分私はそれを間違った角度で見ています。