jQuery获取父页面定义的变量
在前端开发中,我们经常会碰到需要在子页面中获取父页面定义的变量的情况。而使用jQuery可以轻松地实现这一功能。本文将介绍如何使用jQuery获取父页面定义的变量,并提供相应的代码示例。
1. 父页面定义变量的方法
在父页面中定义变量有多种方法,以下是两种常见的方式:
1.1 使用全局变量
在父页面中,可以使用JavaScript的全局变量来定义需要获取的变量。全局变量在整个页面中都是可见的,因此可以在子页面中访问并获取其值。
// 父页面
var myVariable = "Hello World!"; // 定义全局变量
// 子页面
console.log(myVariable); // 输出:Hello World!
1.2 使用URL参数
另一种常见的方法是将变量作为URL参数传递给子页面。在父页面中,可以通过URL的查询字符串传递变量的值。在子页面中,可以使用 location.search
属性获取URL参数,并解析出需要的变量值。
// 父页面
var myVariable = "Hello World!"; // 定义变量
var url = "child.html?variable=" + encodeURIComponent(myVariable); // 将变量作为URL参数传递给子页面
// 子页面
var urlParams = new URLSearchParams(location.search); // 解析URL参数
var myVariable = urlParams.get('variable'); // 获取变量的值
console.log(myVariable); // 输出:Hello World!
2. 使用jQuery获取父页面定义的变量
使用jQuery可以方便地获取到父页面定义的变量。下面是具体的步骤和代码示例。
2.1 引入jQuery库文件
首先,在子页面中引入jQuery库文件,可以通过CDN或者本地文件引入。下面是通过CDN引入的示例:
<script src="
2.2 使用父页面定义的变量
在子页面中,可以使用 window.parent
属性来获取父页面的全局变量。window.parent
表示当前子页面的父页面的window对象,通过它可以访问父页面的全局变量。
// 父页面
var myVariable = "Hello World!"; // 定义全局变量
// 子页面
console.log(window.parent.myVariable); // 输出:Hello World!
如果使用URL参数传递变量,则可以在子页面中使用 window.parent.location.search
来获取父页面传递的URL参数值。
// 父页面
var myVariable = "Hello World!"; // 定义变量
var url = "child.html?variable=" + encodeURIComponent(myVariable); // 将变量作为URL参数传递给子页面
// 子页面
var urlParams = new URLSearchParams(window.parent.location.search); // 解析URL参数
var myVariable = urlParams.get('variable'); // 获取变量的值
console.log(myVariable); // 输出:Hello World!
3. 示例与实践
下面是一个实际的示例,展示了如何在子页面中通过jQuery获取父页面定义的变量,并将其显示在页面上。
<!-- 父页面 -->
<!DOCTYPE html>
<html>
<head>
<title>父页面</title>
<script src="
</head>
<body>
父页面
<script>
var myVariable = "Hello World!"; // 定义全局变量
</script>
<a rel="nofollow" href="child.html">打开子页面</a>
</body>
</html>
<!-- 子页面 -->
<!DOCTYPE html>
<html>
<head>
<title>子页面</title>
<script src="
</head>
<body>
子页面
<script>
$(document).ready(function() {
var myVariable = window.parent.myVariable; // 获取父页面定义的变量
$('#variable').text(myVariable); // 将变量的值显示在页面上
});
</script>
<p>父页面定义的变量:<span id="variable"></span></p>
</