2017-08-29 17 views
0

私は埋め込まれたYouTubeのビデオだけを含むHTMLのiframeを持っています。ユーザーがビデオ/ iframeをクリックしても動作しないときにアクションを実行しようとしています。jQuery iframeのビデオを見る(youtube)

HTML::

<iframe id="myVideo" autoplay="true" src="https://www.youtube.com/embed/pyvGEnmv1E0"></iframe> 

のjQuery:ここでは、コードである "問題の行" で

$(function(){ 
    //line in question: 
    $('#myVideo').contents().find("body").click(function(){ 
    //perform action here 
    }); 
}); 

以上、私はまた、より多くのsimple-

$('#myVideo').click(function(){}); 

を試してみましたそれも失敗します。どんな助けもありがたいです。

アンドリュー

答えて

0

あなたはインラインフレームを介して取得するイベントをクリックして必要としない場合は、オーバーレイを使用し、その上でクリックイベントをキャプチャすることができます。 HTML

<div id="myVideoWrapper"> 
    <iframe id="myVideo" autoplay="true" src="https://www.youtube.com/embed/pyvGEnmv1E0"></iframe> 
    <div id="myVideoOverlay"></div> 
</div> 

CSS:

#myVideoWrapper { 
    position:relative; 
} 

#myVideoOverlay { 
    position:absolute; 
    top:0; 
    left:0; 
    width:100%; 
    height:100%; 
} 

JS:

このよう

$(function(){ 
    $('#myVideoOverlay').click(function(){ 
     alert('clicked'); 
    }); 
}); 
+0

こんにちはデビッド、あなたの迅速な答えのためのおかげで、残念ながらそれはしませんでした問題をまったく解決してください。ソリューションの完全なコードはwww.samedaygrocerydelivery.net/test2.txtにあり、ここに実装されています:www.samedaygrocerydelivery.net/test2.php – user2744032

+0

CSSを追加する必要があります。これはオーバーレイdiv要素が座るようにしますiframe要素のtopその後、クリックイベントが発生したことがわかります。しかし、私が言ったように、それはiframeに行くクリックイベントをブロックするので、おそらくあなたのための良い解決策ではありません。あなたのためにもっと良いかもしれない以下のリンクで説明されているトリックがあります:https://stackoverflow.com/questions/2381336/detect-click-into-iframe-using-javascript#answer-23231136 – David

+0

あなたが上記で提供したリンク私のために働いた。 Davidに感謝します。 - アンドリュー – user2744032

関連する問題