检查YouTube视频是否正在播放并运行脚本



我在WordPress 中嵌入了以下视频

<iframe id="video" width="640" height="360" src="http://www.youtube.com/embed/xxxxxx?enablejsapi=1" frameborder="0" allowfullscreen></iframe>

它在SlideDeck滑块内,当有人点击视频时,我想停止它。我不知道如何获得这行代码

self.pauseAutoPlay = true;

以在播放视频时运行。

我急需帮助。

编辑:因为我不是最终用户。我需要一些东西,将工作的默认嵌入代码从YouTube。

您需要使用YouTube iFrame API。请记住,我只知道Javascript等的基本知识,所以这可能会更有效率。

你他们嵌入你的iframe,你通常会

<iframe id="player" width="640" height="360" src="http://www.youtube.com/embed/TJ2X4dFhAC0?enablejsapi" frameborder="0" allowfullscreen></iframe>

但有几个变化。它需要有一个ID"player",并且需要将?enablejsapi附加到源URI的末尾。

然后,您需要运行以下脚本来加载API JS并创建播放器

// 2. This code loads the IFrame Player API code asynchronously.
      var tag = document.createElement('script');
      tag.src = "http://www.youtube.com/player_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
  // 3. This function creates an <iframe> (and YouTube player)
  //    after the API code downloads.
  var player;
  function onYouTubePlayerAPIReady() {
    player = new YT.Player('player', {
      height: '390',
      width: '640',
      videoId: 'u1zgFlCw8Aw',
      events: {
        'onReady': onPlayerReady,
        'onStateChange': onPlayerStateChange
      }
    });
  }

请注意,new YT.Player('player'应该与您的iframe ID匹配,videoId: 'u1zgFlCw8Aw'应该与src URI匹配。

在这之后,你将能够运行像这样的脚本

var myPlayerState;
      function onPlayerStateChange(event) {
        if (event.data == YT.PlayerState.PLAYING && !done) {
          // DO THIS
        }
        myPlayerState = event.data;
      }
if (myPlayerState == 1){
  // PAUSE SLIDER
}

您需要使用flash直接嵌入youtube:

http://code.google.com/apis/youtube/js_api_reference.html#Embedding

之后,您可以使用youtubejavascript API。

你的代码可能是这样的:

<script type="text/javascript" src="swfobject.js"></script>    
<div id="ytapiplayer">
You need Flash player 8+ and JavaScript enabled to view this video.
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer" };
swfobject.embedSWF("http://www.youtube.com/v/VIDEO_ID?enablejsapi=1&playerapiid=ytplayer&version=3",
                   "ytapiplayer", "425", "356", "8", null, null, params, atts);

var player;
function onytplayerStateChange(newState) {
    if (newState == 1)
        callPlay();
    else if (newState == 2)
        callPause();
}
function callPlay() {
    //video is play
}
function callPause() {
    //video is paused
}
</script>

p.S.swfoject.js来源,您可以在此处找到

相关内容

  • 没有找到相关文章

最新更新