如何检查是否在ul标签的li中播放任何YouTube视频,然后相应地执行一些操作

时间:2017-03-14 11:45:35

标签: javascript jquery youtube youtube-api

我在ul标签的li(s)中嵌入了视频,如

  <ul class="slides">
        <li>
            <iframe id="ctl00_SliderContent_rptSlider_ctl01_framevid" width="400" height="200" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" style="border: solid 4px #37474F" src="https://www.youtube.com/embed/umG3MsLrcOU"></iframe>
            <img src="images/kitchen_adventurer_cheesecake_brownie.jpg" />
            </li>
            <li>
            <img src="images/kitchen_adventurer_lemon.jpg" />
            </li>
            <li>
            <img src="images/kitchen_adventurer_donut.jpg" />
              <iframe id="ctl00_SliderContent_rptSlider_ctl02_framevid" width="400" height="200" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" style="border: solid 4px #37474F" src="https://www.youtube.com/embed/umG3MsLrcOU"></iframe>
            </li>
            <li>
            <img src="images/kitchen_adventurer_caramel.jpg" />
            </li>
      </ul>

我正在尝试调整下面的jQuery代码,以获取不同li ul标签中的视频状态,然后相应地执行操作。我无法做到这一点。

          <script type="text/javascript">
            var player;
             function onYouTubeIframeAPIReady() {
            player = new YT.Player('ctl00_SliderContent_rptSlider_ctl01_framevid', {
            events: {
           'onStateChange': onPlayerStateChange
            }
         });
       } 
        function PlayStop(playerStatus) {
        if (playerStatus == -1) {
          // unstarted 
        } else if (playerStatus == 0) {
         // ended
        } else if (playerStatus == 1) {
          // playing
      } else if (playerStatus == 2) {
         // paused
      } else if (playerStatus == 3) {
       // buffering
      } else if (playerStatus == 5) {
      // video cued
      }
    }
    function onPlayerStateChange(event) {
       PlayStop(event.data);
     }
    </script>

请帮帮我!!!

1 个答案:

答案 0 :(得分:1)

你应该忘记持有元素的标记,因为玩家不会看到或使用它们。

最好是使用玩家ID来定位每个玩家并让他们将信息发送到全球脚本进行交互。
你可以得到一个开始HERE,但是在stackoverflow中也有很多例子可供查找。