2017-02-22 73 views
1

我在同一頁面上有多個Vimeo視頻iframe。所以我想爲所有的iframe添加事件監聽器。但不知何故,它不適合我。在同一頁面上添加多個視頻的vimeo事件監聽器

這裏是我添加在document.ready上的代碼。

var iframes = document.querySelectorAll('iframe'); 

var player; 
//loop through all and add event 
    for (i = 0; i < iframes.length; i++) { 
     // when vimeo player is ready add other events 
     player = $f(iframes[i]); 

     player.addEvent('ready', function() {   

      player.addEvent('play', onPlay); 
      player.addEvent('pause', onPause); 

     }); 

     function onPlay(el) { 
      console.log('play'); 
     } 

     function onPause(el) { 
     console.log('pause'); 
     } 

    } 

我得到變量'iframes'中的所有iframe,它也遍歷所有並添加就緒事件。但不能添加播放和暫停事件。我哪裏錯了?

回答

-1

以下代碼將幫助您將事件附加到您的框架。

<script> 

    $(document).ready(function() { 
     var x = document.querySelectorAll("iframe"); 
     var nodelist = x.length; 
     alert(nodelist); 

     for (i = 0; i < nodelist; i++) { 

      var player = new Vimeo.Player(x[i]); 

      player.on('play', function() { 
       console.log('played the video!'); 
      }); 

      player.on('ended', function() { 
       console.log('ended the video!'); 
      }); 
     } 
    }); 

</script> 
+1

爲什麼答案是downvoted?這個對我有用。讓我知道你面臨的問題。 –

0

事實上,我的問題中提到的多個視頻播放/暫停問題使用froogaloop2.js解決。我現在沒有爲這個問題編寫任何額外的代碼。並且我的iframe src url不會附加api = 1參數。