У меня есть прозрачный блок поверх iframe, и когда я нажимаю на этот блок, я хочу скрыть его, и этот клик должен быть передан в iframe. В js скрипке это видео для встраивания youtube, поэтому мне нужно, чтобы он начал играть. Это не имеет никакого отношения к API-интерфейсу youtube, это там, к примеру.
HTML:
<div id="wrapper">
<iframe width="853" height="480" src="//www.youtube.com/embed/ASO_zypdnsQ" frameborder="0" allowfullscreen></iframe>
<div id="hideme"></div>
</div>
CSS:
#wrapper{
position: relative;
}
#hideme{
width: 853px;
height: 480px;
position: absolute;
opacity: 0.0;
z-index: 100;
}
iframe{
position: absolute;
}
JS:
$(document).ready(function(){
var button = $('#ok');
$('#hideme').on('click', function(event){
$(this).hide();
$('iframe').trigger('click', event);
});
button.click(function(){
alert('You pushed the button!');
});
});
Вот jsfiddle: http://jsfiddle.net/ZL8ut/
Существует три способа сделать это: при нажатии кнопки вы можете использовать:
$('iframe').attr('src', $('iframe').attr('src') + '?autoplay=1');
Вот рабочий JSFiddle, основанный на вашем собственном.
Надеюсь, это то, что вы хотели.
просто .trigger('click');
работает
$('#hideme').on('click', function(event){
$(this).hide();
$('iframe').trigger('click');
});
button.click(function(){
alert('You pushed the button!');
});
//test by this
$("iframe").on("click", function(){
alert("clicked");
})