当前位置: 首页 > 编程笔记 >

关于Iframe父页面与子页面之间的相互调用

锺离良哲
2023-03-14
本文向大家介绍关于Iframe父页面与子页面之间的相互调用,包括了关于Iframe父页面与子页面之间的相互调用的使用技巧和注意事项,需要的朋友参考一下

iframe元素就是文档中的文档。

window对象: 浏览器会在其打开一个HTML文档时创建一个对应的window对象。但是,如果一个文档定义了一个或者多个框架(即:包含一个或者多个frame或者iframe标签),浏览器就会为原始文档创建一个window对象,再为每个iframe创建额外的window对象,这些额外的window对象是原始窗口的子窗口。

contentWindow: 是指指定的iframe或者iframe所在的window对象

Demo1

父页面fu.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>父页面</title>
  </head>
  <body>
  <input type=button value="调用子页面中的函数childSay函数" onclick="callChild()">
  <iframe id="myFrame" src="zi.html"></iframe>
  <script type="text/javascript">
function parentSay() {
alert("我是父页面中的方法");
}
function callChild()
{
document.getElementById("myFrame").contentWindow.childSay();
}
  </script>
  </body>
</html>

子页面zi.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>子页面</title>
  </head>
  <body>
  <input type=button value="调用父页面中的parentSay()函数" onclick="callParent()">
  <script type="text/javascript">
function childSay()
{
alert("我是子页面的say方法");
}
function callParent() {
parent.parentSay();
}
  </script>
  </body>
</html>

Demo2

父页面iframe1.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>父页面与子页面之间的调用</title>
  </head>
  <body>
  <iframe src="http://localhost/iframe/iframe3.html" id="iframe3"></iframe>
  <iframe src="http://localhost/iframe/iframe2.html" id="iframe2"></iframe>
  <div class="iframe1">我是父页面</div>
  <script type="text/javascript">
  var iframe2=document.getElementById('iframe2');
  iframe2.onload=function(){//父页面调用子页面中的方法
    iframe2.contentWindow.b();
  };
  function test2() {
    console.log("我是父页面中的方法,在子页面中调用的");
    return iframe2;
  }
  </script>
  </body>
</html>

子页面iframe2.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>子页面</title>
  </head>
  <body>
  <div id="test">aaa</div>
  <div class="iframe2">子页面</div>
  <script type="text/javascript">
  //子页面iframe2.html调用父页面iframe1.html的函数:
   parent.test2();
   function b(){
      console.log("我是子页面iframe2");
    }
    function c() {
      console.log("iframe3页面调用iframe2页面");
    }
  </script>
  </body>
</html>

子页面iframe3.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>iframe3</title>
  </head>
  <body>
  <script type="text/javascript">
  var iframe2=parent.test2();
  iframe2.contentWindow.c();//iframe3调用iframe2中的方法
  </script>
  </body>
</html>

Demo2也实现了子页面与子页面之间相互调用。

以上就是小编为大家带来的关于Iframe父页面与子页面之间的相互调用全部内容了,希望大家多多支持小牛知识库~

 类似资料:
  • 本文向大家介绍浅谈js中子页面父页面方法 变量相互调用,包括了浅谈js中子页面父页面方法 变量相互调用的使用技巧和注意事项,需要的朋友参考一下 (1)子页面调用父页面的方法或者变量: window.parent.方法()或者变量名 window.parent相当于定位到父页面  之后的操作和在父页面中写代码一样写 (2)父页面调取子页面 主要是通过contentWindow定位到子页面 以上这篇浅

  • 本文向大家介绍iframe父页面如何获取子页面的元素?相关面试题,主要包含被问及iframe父页面如何获取子页面的元素?时的应答技巧和注意事项,需要的朋友参考一下 在父页面监听 onmessage,子页面 postMessage。 $('iframe')[0].contentWindow.document.getElementById document.frames['xx'].document.

  • 本文向大家介绍js中iframe调用父页面的方法,包括了js中iframe调用父页面的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了js中iframe调用父页面的方法。分享给大家供大家参考。具体实现方法如下: 子页面调用父页面的方法在js中很容易实现。我们只需要在主页面加个函数,然后在子页面通过window.parent.方法()即可实现了 比如调用a()函数,就写成: 但是我在ch

  • 以下是所有相关文档页面的列表: eosio.system DICE eosio.system

  • 问题内容: 基本上,我有一个嵌入页面的页面,并且有一些需要从父页面调用的JavaScript例程。 现在,相反的操作非常简单,因为您只需要调用,但是不幸的是,我需要恰好相反。 请注意,我的问题是不会改变的源URL的,但是调用在定义的函数。 问题答案: 假设您的iFrame的ID为“ targetFrame”,而您要调用的函数为: 您也可以使用代替访问框架。

  • 本文向大家介绍通过伪协议解决父页面与iframe页面通信的问题,包括了通过伪协议解决父页面与iframe页面通信的问题的使用技巧和注意事项,需要的朋友参考一下 我们经常会有父页面与iframe页面的操作,比如 <iframe id = "iframe"></iframe> 这个iframe里面的内容是js写的。如以下代码 以上代码在大多数情况下是对的。但有种情况,即父页面显式的写了document