2017-08-29 9 views
0

Ich habe eine HTML-iframe, die nur ein eingebettet YouTube-Video enthält. Ich versuche eine Aktion auszuführen, wenn der Benutzer auf das Video/Iframe klickt, aber nicht funktioniert. Hier Code ist:jQuery klicken Sie auf iframe Video (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 
    }); 
}); 

Auf der "Linie in Frage" oben, ich habe auch versucht, die mehr Einfach-

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

aber das scheitert auch. Jede Hilfe wird wunderbar geschätzt.

Andrew

Antwort

0

Wenn Sie nicht brauchen, Ereignisse auf das jeweilige iFrame zu durchkommen, könnten Sie ein Overlay verwendet werden, und erfassen das Click-Ereignis, dass auf.

So:

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

Hallo David, vielen Dank für Ihre schnelle Antwort, leider, die nicht tat löse das Problem überhaupt. Der vollständige Code Ihrer Lösung ist hier: www.samedaygrocerydelivery.net/test2.txt und implementiert hier: www.samedaygrocerydelivery.net/test2.php – user2744032

+0

Sie müssen auch das CSS hinzufügen - das wird das Overlay div Element sitzen auf Anfang des Iframe-Elements. Dann sollte das Klickereignis ausgelöst werden. Aber wie ich schon sagte, wird Click-Events blockieren, die durch iframe gehen, also ist es wahrscheinlich keine gute Lösung für Sie. Es gibt einen Trick, der auf dem folgenden Link beschrieben wird, der für Sie besser sein kann: https://stackoverflow.com/questions/2381336/detect-click-into-iframe-using-javascript#answer-23231136 – David

+0

yeah, dass Sie oben genannten Link hat für mich gearbeitet. Danke David. - Andrew – user2744032