IE 9 Javascript窗口变量为null。。在IE 8上工作
在我的代码中,我通过以下方式访问javascript变量:IE 9 Javascript窗口变量为null。。在IE 8上工作,javascript,internet-explorer-8,internet-explorer-9,Javascript,Internet Explorer 8,Internet Explorer 9,在我的代码中,我通过以下方式访问javascript变量: var DASHBOARD = document.parentWindow.parent.Dashboard; 其中,父对象的值为{object Window},其类型为DispHTMLWindow2。 它在IE8或IE9兼容性视图中工作正常,但当我无法使其在IE9上工作时 在IE9上,document.parentWindow.parent.Dashboard的值未定义,其类型未定义。我还注意到,在IE9上,父对象的值是{…},其类
var DASHBOARD = document.parentWindow.parent.Dashboard;
其中,父对象的值为{object Window},其类型为DispHTMLWindow2。
它在IE8或IE9兼容性视图中工作正常,但当我无法使其在IE9上工作时
在IE9上,document.parentWindow.parent.Dashboard的值未定义,其类型未定义。我还注意到,在IE9上,父对象的值是{…},其类型是[Object,Window]
在IE 9中是否有不同的方式访问变量仪表板
例如:
layouts.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Create new Layout</title>
<style type="text/css">
.border-top { height: 5px; background-color: #B2B2B2;}
.border-left { width: 3px; height: 100%; background-color: #B2B2B2;}
.content { height: 100%; background-color: #FFFFFF;}
</style>
<script type="text/javascript" src="./container/includes/js/jquery-1.5.1.min.js"></script>
<script type="text/javascript" src="./container/includes/js/jquery-ui-1.8.12.custom.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
var dada = "123";
});
</script>
</head>
<body>
<form id="form1" runat="server" style="width: 100%; height: 100%;">
<div style="width: 100%; height: 100%;">
<iframe name="remote_iframe_0" src="layouts2.aspx" id="remote_iframe_0" />
</div>
</form>
</body>
</html>
创建新布局
.边框顶部{高度:5px;背景色:#B2B2B2;}
.左边框{宽度:3px;高度:100%;背景色:#B2B2B2;}
.content{高度:100%;背景色:#FFFFFF;}
$(文档).ready(函数(){
var dada=“123”;
});
layouts2.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<style type="text/css">
.border-top { height: 5px; background-color: #B2B2B2;}
.border-left { width: 3px; height: 100%; background-color: #B2B2B2;}
.content { height: 100%; background-color: #FFFFFF;}
</style>
<script type="text/javascript" src="./container/includes/js/jquery-1.5.1.min.js"></script>
<script type="text/javascript" src="./container/includes/js/jquery-ui-1.8.12.custom.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
debugger;
});
</script>
</head>
<body>
<form id="form1" runat="server" style="width: 100%; height: 100%;">
<div style="width: 100%; height: 100%;">
AAAA
</div>
</form>
</body>
</html>
.边框顶部{高度:5px;背景色:#B2B2B2;}
.左边框{宽度:3px;高度:100%;背景色:#B2B2B2;}
.content{高度:100%;背景色:#FFFFFF;}
$(文档).ready(函数(){
调试器;
});
AAAA
如何在调试器中访问变量dada;在layouts2.aspx中?考虑到两个页面位于同一个域。您可以使用:
window.parent.dada
参考:
请确认:这两个窗口是否由同一域/端口提供服务?父框架和子框架位于同一域和端口上。
parentWindow
是Microsoft唯一的参数。我想他们在IE9中删除它是为了兼容。使用parent
或opener
代替。我尝试了Dom中几乎所有可能的路径来查找我的变量,但在IE9中找不到它。场景是这样的:一个主窗口,其中声明了一个变量仪表板;B iframe是A的(都是同一个域),我正在尝试从B访问变量。您尝试过:window.parent.dada吗?(和)编辑以使链接可点击。但实际上,w3schools并不是一个好的资源。