Я пытаюсь создать модальное всплывающее окно iframe для родителя iframe после того, как я нажму ссылку в iframe. Это работает, но функция addEventListener на родительской странице срабатывает при загрузке страницы, а не ожидает щелчка от дочернего iframe. Я искал на этом сайте и не могу найти ответ, который я ищу. Вот код от родителя:
<script>
$(document).ready(function(){
$("#closer").click(function () {
$("body").css('overflow','auto');
$(".overlay").hide("fast");
});
window.addEventListener("message", function(event) {
$("body").css('overflow','hidden');
$(".overlay").show("fast");
console.log("Hello from " + event.data);
});
});
</script>
Это код из дочернего iframe:
<script>
$(function() {
$(".standard").click(do_stuff);
function do_stuff(){
parent.postMessage("child frame", "*");
}
});
</script>
Я добавил журнал консоли, чтобы попытаться отследить его работу.
.click(do_stuff)
, а не.click(do_stuff())
? Дополнительные скобки вызовут эту проблему. - person Barmar   schedule 19.04.2015child frame
или какое-то другое сообщение? - person Barmar   schedule 19.04.2015debugger;
кdo_stuff
, чтобы поймать его при запуске. - person Barmar   schedule 19.04.2015event.data
, когда это происходит? - person Barmar   schedule 19.04.2015