在 iframe 父窗口触发点击事件

10
<div id="main">
    <a id="mainp" >Parent Window</a>

    <iframe id="iframeindex" src="iframeindex.html" >

    </iframe>
</div>

<script>
     $(function() {
        $('#mainp').live('click', function(e) {
            alert("hi");
            e.preventDefault();
        });

iframe的索引源:

<a id="child1" class="test" href="a.html">aa</a>    

<script>
    $(function() {          
        $('.test').click(function(e){           
            $('#mainp', window.parent.document).css('color', 'red').trigger('click');

            e.preventDefault();
        })
    });

我的父窗口链接应用了CSS样式,但点击事件没有被触发。我该如何向父窗口发送触发事件?


1
请善待读者并花些时间整理您的代码。一致的格式和缩进可以让您走得更远! - John Kugelman
3
window.parent.$('#mainp').click() 这段代码会触发 ID 为 "mainp" 的元素的点击事件。 - Nick Craver
1
如果父级iframe没有运行jQuery怎么办? - Xavi
2个回答

20
window.parent.$('#mainp').trigger('click');
或者
window.parent.$('#mainp').click();

1
这个回答假设它们在同一个域上...应该进行说明。 - Mark Schultheiss

0

我已经成功地使用了以下格式,其他选项都无法正常工作。

    if ($("#maip", window.parent.document).length > 0){
        $("#mainp", window.parent.document).click();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接