1
<div id="audio-player">

   <div>

      <img id="playButton" 
    onclick="document.getElementById('stars').play(); 
        document.getElementById('playButton').toggle(
            function(){ $(this).attr("src", "playbutton-active.png"); },
            function(){ $(this).attr("src", "playbutton-inactive.png"); } );" 
        src="playbutton-inactive.png">

      <img id="pauseButton" 
    onclick="document.getElementById('stars').pause();
    document.getElementById('pauseButton').toggle(
        function(){ $(this).attr("src", "pausebutton-active.png"); },
        function(){ $(this).attr("src", "pausebutton-inactive.png"); } );"
        src="pausebutton-inactive.png">

      <img id="stopButton" 
     onclick="document.getElementById('stars').pause(); 
     document.getElementById('stars').currentTime = 0;
     document.getElementById('stopButton').toggle(
        function(){ $(this).attr("src", "stopbutton-active.png"); },
        function(){ $(this).attr("src", "stopbutton-inactive.png"); } );"
        src="stopbutton-inactive.png">

  </div>

  <audio id="stars">
    <source src="stars-in-the-night-sky.mp3">
    <source src="stars-in-the-night-sky.ogg">
  </audio>

$(this).toggleを使用して、getElementById('playButton')の代わりに試しましたが、アクティブ/非アクティブの画像は切り替わりません。トグルステートメントがない場合、カスタムボタンはオーディオの開始/一時停止/停止に機能します。トグルを追加すると、最初の非アクティブなコントロール画像が表示されますが、コントロールは機能しなくなります。また、ボタンを切り替えたときに他のボタンをリセットするには、別の機能が必要になることもわかりました。

4

1 に答える 1

0

"$("#playButton ")。toggle(..);"を試してください。JQueryオブジェクトが必要です...

代わりに、次の方法を使用してください。

<script type="text/javascript">
  $(document).ready(function(){
    $("#playButton").click(function(){
      $(this).toggle(..);
    });
  });
</script> 

JQuery-uiとその「ボタン」メソッドも見ることができます!

于 2011-04-14T08:45:19.927 に答える