使用iframe父页面调用子页面和子页面调用父页面的元素与方法

在实际的项目开发中,iframe框架经常使用,主要用于引入其他的页面。下面主要介绍一下使用iframe引入其他页面后,父页面如何调用子页面的方法和元素以及子页面如何调用父页面的方法和元素。

1、父页面获取子页面的元素

//jquery方式

$("#iframeId").contents().find("#child1");

//js方式

window.frames["iframName"].document.getElementById("child1");

2、父页面获取子页面方法

iframName.window.childrenFn();

3、子页面获取父页面元素

//jquery方式

$("#parent1",parent.document);

//js方式

window.parent.document.getElementById("parent1");

4、子页面获取父页面方法

parent.parentFn();

父页面:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>父页面</title>
    </head>
    <body>
        <iframe src="iframechildren.html" width="100" height="100" name="iframName" id="iframeId"></iframe>
        <div id="parent1">调用子页面元素</div>
        <div id="parent2">调用子页面方法</div>
    <script src="js/jquery-1.9.1.js"></script>
    <script>
        function parentFn () {
            alert("我是父页面的方法");
        }
        //父页面获取子页面元素
        $("#parent1").click(function () {
            //jquery方式
            $("#iframeId").contents().find("#child1").css("color","#FF0000");
            //js方式
            window.frames["iframName"].document.getElementById("child1").style.color = "#FF0000";
        });
        //父页面获取子页面方法
        $("#parent2").click(function () {
            iframName.window.childrenFn();
        });
    </script>
    </body>
</html>

子页面:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>子页面</title>
    </head>
    <body>
        <div id="child1">调用父页面元素</div>
        <div id="child2">调用父页面方法</div>
    <script src="js/jquery-1.9.1.js"></script>
    <script>
        function childrenFn() {
            alert("我是子页面的方法");
        }
        //调用父页面元素
        $("#child1").click(function () {
            //jquery方式
            $("#parent1",parent.document).css("color","#00f");
            //js方式
            window.parent.document.getElementById("parent1").style.color = "#00f";
        });
        //调用父页面方法
        $("#child2").click(function () {
            parent.parentFn();
        });
    </script>
    </body>
</html>
时间: 2024-10-24 16:07:24

使用iframe父页面调用子页面和子页面调用父页面的元素与方法的相关文章

JQuery调用iframe父页面元素与方法

JQuery操作iframe父页面与子页面的元素与方法 下面简单使用Jquery来操作iframe的一些记录,这个使用纯JS也可以实现. 第一.在iframe中查找父页面元素的方法: $('#id', window.parent.document) 第二.在父页面中获取iframe中的元素方法: $(this).contents().find("#suggestBox") 第三.在iframe中调用父页面中定义的方法和变量: parent.method parent.value 第四.

JQuery操作iframe父页面与子页面的元素与方法

JQuery操作iframe父页面与子页面的元素与方法 更新: 2011-05-05 来源: 互联网 字体:[大 中 小] - JQUERY IFRAME 下面简单使用Jquery来操作iframe的一些记录,这个使用纯JS也可以实现. 第一.在iframe中查找父页面元素的方法: $('#id', window.parent.document) 第二.在父页面中获取iframe中的元素方法: $(this).contents().find("#suggestBox") 第三.在ifr

js如何判断是否在iframe中/JQuery调用iframe父页面元素与方法

//方式一 if (self.frameElement && self.frameElement.tagName == "IFRAME") { alert('在iframe中'); } //方式二 if (window.frames.length != parent.frames.length) { alert('在iframe中'); } //方式三 if (self != top) { alert('在iframe中'); } 第一.在iframe中查找父页面元素的

iframe子页面获取父页面元素的方法

取得iframe中元素的方法有很多,在本文为大家介绍下在iframe子页面获取父页面元素的方法,下面有个不错的示例,感兴趣的朋友可以参考下 在iframe子页面获取父页面元素 代码如下: 复制代码代码如下: $.('#objld', parent.document); 在父页面获取iframe子页面的元素 代码如下: 复制代码代码如下: $("#objid", document.iframes('iframe').document) 或 复制代码代码如下: $(document.get

iframe中 父页面和子页面查找元素的方法

从父页面中查找iframe子页面中对象的方法:JS: document.getElementById('iframe').contentWindow //查找iframe加载的页面的window对象 document.getElementById('iframe').contentWindow.document //查找iframe加载的页面的document对象 document.getElementById('iframe').contentWindow.document.body //查找

页面嵌套iframe后,点击里面的链接,然后父窗口跳转(子窗口控制父窗口的链接跳转)

做app的时候遇到一个问题,一个页面,然后里面嵌套了一个另一个页面,想实现点击里面的链接,然后外面进行跳转,不然的话,里面的页面永远出不来, 后面想了个办法,app的页面都是打开打开,不关闭的,然后由上一个页面用postmessage进行监听,然后子窗口发送信息给父窗口,父窗口接到信息后进行 页面跳转,Android可以,然而ios却不行,坑了:只能想另外一种办法, app打开页面不是都不会关闭的嘛,然后让这个top页面去轮询读取cookie,目标页面 判断请求头部,是否为移动端访问(因为目标页

JS 父页面调子页面(2种情况),子掉父级(1种)(转)

A :父级调用子级页面 ,非IFRAME情况,类似平级: window.open("子页面.html", "", "width=1024,height=768"); window.opener.子页面函数名字(); B : 父级调用子级页面 ,IFRAME情况 window.frames["iframe名字"].子页面的函数(); C: 子级调用父级就简单了 window.parent.getIdsChangeCate(ids

JQuery iframe页面通过parent方法操作父页面中的元素与方法(实例讲解)

1)在iframe中查找父页面元素的方法: $('#id', window.parent.document) 2)在iframe中调用父页面中定义的方法和变量: parent.method parent.value 3)实例 1.父页面 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="If

HTML框架IFrame结合JS在主页面和子页面间传值

下面主页面和子页面互相传值的DEMO 如果仅仅需要子页面触发主页面的函数 仅需 [ parent.window.你的函数 ] 就可以了 DOM方法:父窗口操作IFRAME:window.frames["iframeSon"].documentIFRAME操作父窗口: window.parent.document jquery方法:在父窗口中操作 选中IFRAME中的所有输入框: (window.frames["iframeSon"].document).find(”