frame引用窗口并没有其作用?

1.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<frameset cols="50%,50%">
    <frame src="red.html" name="redFrame">
    <frame src="blue.html" name="blueFrame">
</frameset>
<script>
    alert(top.frames["redFrame"].color)
</script>
</html>

red.html

<!DOCTYPE html>
<html>
<head>
<title>redFrame</title>
<style>
    body{ background-color: red; }
</style>
</head>
<body>
    <script>
        window.color = "red";
    </script>
</body>
</html>

blue.html

<!DOCTYPE html>
<html>
<head>
<title>blueFrame</title>
<style>
    body{ background-color: blue; }
</style>
</head>
<body>
</body>
</html>

我打开1.html并没有弹出弹框 然后看了控制台,发现我的script没有了 这是为什么? 后来我把script写到head里面 就能弹出red字样的弹框了 这是为啥?

阅读 2.2k
2 个回答

iframe的加载是需要时间的,在没加载完是拿不到数据的,写在head里再加上onload就可以了。

 window.onload = function(){
        alert(top.frames["redFrame"].color)
    }

HTML5 不支持 <frame> 标签

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题