javascript - 父页面监听iframe中的事件问题
本文介绍了javascript - 父页面监听iframe中的事件问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
始终无法监听到,是什么原因?
parent.html
<body>
<iframe id="iframe" src="son.html" frameborder="0"></iframe>
<script src="./jquery.js"></script>
<script>
$(function(){
$($('#iframe')[0].contentWindow).on('dosomething', function(){
alert('接收到到iframe的事件');
});
});
</script>
</body>
son.html
<body>
<h1>son</h1>
<button id="button">trigger</button>
<script src="./jquery.js"></script>
<script>
$(function(){
$('#button').on('click', function(){
$(window).trigger('dosomething');
});
});
</script>
</body>
谢谢!
Dont
刚才搜索时发现的,也不错,兼容性可以
MessengerJS
https://github.com/biqing/Mes...
跨文档通信解决方案
解决方案
son.html
$(function(){
$('#button').on('click', function(){
window.parent.$(window).trigger('dosomething');
});
});
事件是在父页面的jquery里定义的,要触发需要交由父页面的jquery来负责触发。
jquery源码太久没看了,找半天,没找到对应的内容来说明。
这篇关于javascript - 父页面监听iframe中的事件问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文