2017-01-31 35 views
1

私はVimeoプレーヤーのJavaScript APIを使用して、ユーザーがサイトの特定のボタンをクリックしたときに動画を開始します。渡されたプレーヤー要素は、Vimeo埋め込みではありません。 Player JS

ここに埋め込まれたコードです:

<iframe id="vimeo-player" src="<?php the_sub_field('slide_video'); ?>?title=0&byline=0&portrait=0" width="1880" height="1058" frameborder="0" ></iframe> 

ここではJavaScriptです:

var iframe = document.querySelector('#vimeo-player'); 
    var player = new Vimeo.Player(iframe); 

    $('.slide-area__slides__video svg').click(function(){ 
     $(this).hide(); 
     $(this).closest('.item').find('img').hide(); 
     $(this).siblings('iframe').show(); 
     player.play(); 
    }); 

    player.on('ended', function(data) { 
     $('.slide-area__slides__video svg').show(); 
     $('.slide-area__slides__video iframe').hide(); 
     $('.slider-area__slides .item img').show(); 
    }); 

それはChromeで完璧に動作しますが、他のすべてのブラウザでは、それだけでエラーを投げ続ける:

The player element passed isn’t a Vimeo embed.

は、

誰もこれまでに遭遇したことはありますか?それはかなりイライラしています。

player.jsを見ると

答えて

0

、それはエラーが表示されているようですとき:

if (element.nodeName === 'IFRAME' && !isVimeoUrl(element.getAttribute('src') || '') {...} 

は確かthe_sub_field( 'slide_video')が有効なのVimeoのURLを出力してください。

関連する問題