0

複数の div があり、div ごとにこのようなコードを記述し、$NBR++ を循環して id を変更する必要があります。最後に。これを div ごとに一意にするよりも、これを 1 回記述するより速い方法はありますか?

   // when $NBR = 1
   <div class="playbutton<?php echo $NBR?>">
       <script>
           $(".playbutton<?php echo $NBR?>").click(function()
              {  $(".playbutton<?php echo $NBR?>").hide();
                 $('#songpicture').attr("src", "<?php echo $thumb[$NBR]?>");
              });
       </script>
   </div>


   // when $NBR = 2
   <div class="playbutton<?php echo $NBR?>">
       <script>
           $(".playbutton<?php echo $NBR?>").click(function()
              {  $(".playbutton<?php echo $NBR?>").hide();
                 $('#songpicture').attr("src", "<?php echo $thumb[$NBR]?>");
              });
       </script>
   </div>

これは15回続きます...etc....すべてのphp変数は、PHPで各divの先頭に設定されます。

それで、これを一度に記述できる1つのコードに「圧縮」できる方法はありますか? それとも、各 div の後に記述する必要がありますか?

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

4

1 に答える 1

5

これを一番上に追加し、他のすべてのスクリプトを削除します。

 <script>
  $(function () {
     $(".playback_divs").click(function() {  
       $(this).hide();
       $('#songpicture').attr("src", $(this).data('thumb-nbr'));
     });
  }
 </script>

そして、htmlを次のように変更します。

<div class="playback_divs playbutton<?php echo $NBR?>" data-thumb-nbr="<?php echo $thumb[$NBR]?>">

html の変更に注意してください

playback_divs1) div に追加された新しいクラス。

2) データ属性data-thumb-nbr

于 2012-04-09T21:46:48.920 に答える