浅谈js中子页面父页面方法 变量相互调用

yizhihongxing

浅谈JS中子页面父页面方法变量相互调用

在前端开发中,经常会涉及到页面嵌套的问题,比如一个主页面嵌套多个子页面。在这样的情况下,子页面需要实现某些功能,需要调用主页面的方法或者获取主页面的变量。下面将通过两个示例详细讲解JS中子页面和父页面方法变量相互调用的方法。

示例一

在该示例中,页面A嵌套了页面B。我们需要在页面B中调用页面A中的方法。

首先,在页面A中需要定义一个方法供页面B调用。方法的定义方式如下所示:

function funcA() {
  //A页面中的方法
  console.log("funcA");
}

接下来,在页面B中需要获取页面A的DOM对象,以便调用页面A中的方法。获取方法如下:

var fa = parent.document.getElementById("frameA");

其中,frameA是页面A中的iframe标签的id。

获取页面A的DOM对象之后,就可以通过DOM对象来调用A页面中的方法,实现代码如下所示:

fa.contentWindow.funcA();//调用页面A中的方法

示例二

在该示例中,页面A嵌套了页面B和页面C。我们需要在页面C中获取页面B中的变量。

页面B中需要定义一个全局变量,代码如下所示:

var variableB = "variable in frameB";

接下来,在页面C中需要获取页面B中的变量。获取方法如下:

var fb = parent.document.getElementById("frameB");
var v = fb.contentWindow.variableB;//获取页面B中的变量

其中,frameB是页面B中的iframe标签的id。

获取到页面B中的变量之后,就可以使用这个变量了。在本示例中,我们将获取到的变量通过console.log打印输出,代码如下所示:

console.log(v);//输出:variable in frameB

总结

通过本文的两个示例,我们了解了如何在JS中实现子页面和父页面方法变量相互调用。在实际开发中,这一技术经常会用到,希望以上内容能够对读者有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈js中子页面父页面方法 变量相互调用 - Python技术站

(0)
上一篇 2023年6月8日
下一篇 2023年6月8日

相关文章

  • nodejs 十六进制字符串型数据与btye型数据相互转换

    要将数字或者字符串转换为十六进制字符串,Node.js提供了toString()方法,而将十六进制字符串转换为byte型数据可以借助Buffer类的构造函数。 以下是 nodejs 十六进制字符串型数据与 byte型数据相互转换的完整攻略: 将byte型数据转换为十六进制字符串 使用 toString() 将二进制数据转换为十六进制字符串: const by…

    node js 2023年6月8日
    00
  • 浅谈node使用jwt生成的token应该存在哪里

    当使用 Node.js 程序生成 JSON Web Token (JWT) 时,您需要决定如何存储生成的 token。根据您的具体情况和需求,您可以将 jwt 存储在 cookies、localStorage 中,或者作为 Authorization 头在 HTTP 请求中发送。 以下是三种存储 jwt 的方式: 存储在Cookie中 当您将 Token 存…

    node js 2023年6月8日
    00
  • 详解Node.js:events事件模块

    下面来详细讲解一下“详解Node.js:events事件模块”的完整攻略。 什么是事件模块 在 Node.js 中,events 模块是实现事件驱动的核心模块,提供了 EventEmitter 类用于事件的注册和触发。使用 events 模块的程序可以通过事件的方式触发回调函数,从而实现异步编程。 常用的事件模块方法 常用的 events 模块方法包括: E…

    node js 2023年6月8日
    00
  • 浅析Node.js查找字符串功能

    浅析Node.js查找字符串功能 为什么要使用Node.js查找字符串功能? 在编程过程中,字符串是非常常见的数据类型之一。而查找字符串是编程中非常基础的操作。在Node.js中,提供了一些查找字符串的方法,能够较为方便地实现对字符串的查找、替换、截取等功能。 字符串查找方法概述 Node.js中提供了多种字符串查找方法,包括indexOf, lastInd…

    node js 2023年6月8日
    00
  • 详解在vue-cli项目中安装node-sass

    安装node-sass是为了在vue-cli项目中使用sass预处理器。 以下是在vue-cli项目中安装node-sass的完整攻略: 1. 安装node-sass 在终端中执行以下命令: npm install node-sass –save-dev 这将在项目的package.json中添加node-sass的依赖。 2. 修改配置文件 在项目的根目…

    node js 2023年6月8日
    00
  • 基于Node.js的WebSocket通信实现

    关于“基于Node.js的WebSocket通信实现”的完整攻略,我将分为以下几个部分进行讲解: WebSocket通信简介 Node.js搭建WebSocket服务器 WebSocket客户端与服务器的交互 示例说明 1. WebSocket通信简介 WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。WebSoc…

    node js 2023年6月8日
    00
  • nodejs学习笔记之路由

    对于“nodejs学习笔记之路由”的详细讲解,我将分以下几个部分来讲解:路由基础知识、路由的实现方法和两个示例说明。 路由基础知识 在Web开发中,路由用于描述URL与后端代码之间的映射关系。通俗的讲,就是将不同的URL路径匹配到相应的处理函数进行处理。常见的路由模式有两种: 基于路径的路由模式,例如/index、/about; 基于参数的路由模式,例如/u…

    node js 2023年6月8日
    00
  • Node.js从字符串生成文件流的实现方法

    生成文件流是Node.js中非常重要的一个操作,它可以帮助我们将一些数据以流的形式写入到文件中。下面我将为大家介绍Node.js从字符串生成文件流的实现方法。 实现方法 在Node.js中实现从字符串生成文件流的方法,可以使用fs.createWriteStream()方法。该方法接收一个文件路径作为参数,返回一个可写流对象,可以通过该对象将数据写入到指定的…

    node js 2023年6月8日
    00
合作推广
合作推广
分享本页
返回顶部