如何在iframe中获取单击事件会在父框架中触发警报

我的页面上有几个嵌入式iframes ,我在ifram e中寻找一个点击事件来触发父帧的警报。 (iframe和父框架都是同一个域)。

iFrame HTML元素(iframe有一个class="iframe1"

 Trigger Parent Frame Alert 

iFrame jQuery:

 $(document).ready(function() { $('.button').click(function() { window.parent.triggerAlert(); }); }); 

父框架jQuery:

 $(document).ready(function() { function triggerAlert(){ alert('iFrame button has been clicked'); } }); 

我认为我的父框架function不完整 – 并不完全确定iframe可以与父DOM通信?

我之前尝试过这种替代方案,在父框架中没有运气:

 $('.iframe1').contents().find('.button').click(function () { alert("iFrame button has been clicked"); }); 

为了使您的函数对iframe可见,您需要将其声明为window对象的成员:

 $(document).ready(function() { window.triggerAlert = function (){ alert('iFrame button has been clicked'); } }); 

你触发警报function是在关闭。 试试这个:

 $(document).ready(function() { window.triggerAlert = function triggerAlert(){ alert('iFrame button has been clicked'); }; });