如何使用JavaScript从iframe访问父级的JSON对象

我有一个类似下面的html代码。

index.html

<html>
<head>
 <script>
  user_data = {
  name: 'xyz',age: 123
 }
</script>
</head>
<body>
.... some code ---
<iframe src="test.html"></iframe>
</body>
</html>

test.html

<html>
<head>
 <script>
 $(document).ready(function(){
var username = user_data.name;
});
</head>
<body>
<!--- some other code -->
</body>
</html>

基本上,我正在尝试从test.html(iframe文件)访问index.html中的user_data对象。

有人可以帮助我在iframe中获得价值吗?

benbenmail 回答:如何使用JavaScript从iframe访问父级的JSON对象

首先将脚本从头部移到身体。

<html>
  <head>
    <title>Parcel Sandbox</title>
    <meta charset="UTF-8" />
  </head>

  <body>
    <h1>Parent</h1>
    <iframe src="./test.html"></iframe>
    <script>
    	user_data = {
        name: "xyz",age: 123
      };
    </script>
  </body>
</html>

然后使用window.parent

访问父数据
<body>
    <h1>Test Html</h1>
    <div id="app"></div>
    <script>
        const { parent = {} } = window;
        const { user_data = {} } = parent;
        const { name,age} = user_data;
        const $app = document.getElementById('app')
        $app.innerText = `name: ${name},age: ${age}`
    </script>
</body>

这里是code sample

本文链接:https://www.f2er.com/3144815.html

大家都在问