Javascript 当框架集嵌套在iframe中时,理解“parent.parent”
我试图理解嵌套在Javascript 当框架集嵌套在iframe中时,理解“parent.parent”,javascript,silverlight,iframe,visio,frames,Javascript,Silverlight,Iframe,Visio,Frames,我试图理解嵌套在中的上下文中的parent.parent对象。它的行为似乎与嵌套在窗口中的不同。如果您将页面放入中,我希望parent.parent引用的窗口,但这似乎不正确 父文档导出到网页在中完成 从Visio导出的代码使用和标记实现页面的菜单、小部件和内容区域: </head> <frameset id="frmstOuter" cols="237,*"> <frame src="0.1_files/t
中的
上下文中的parent.parent
对象。它的行为似乎与嵌套在窗口中的
不同。如果您将
页面放入
中,我希望parent.parent
引用
的窗口,但这似乎不正确
父文档导出到网页在
中完成
从Visio导出的代码使用
和
标记实现页面的菜单、小部件和内容区域:
</head>
<frameset id="frmstOuter" cols="237,*">
<frame src="0.1_files/toolbar.htm" name="frmToolbar" id="frmToolbar" title="This frame contains tools for manipulating your drawing." frameborder="6" bordercolor="#999999" scrolling="no" marginheight="0" marginwidth="0" >
<frame src="0.1_files/png_1.htm" name="frmDrawing" title="This frame contains the pages of your drawing." marginheight="10" marginwidth="10" onload="if (parent.isUpLevel) FramePageLoaded()" >
<noframes>
<body>
<h1>KPI Request Process</h1>
<ul>
<li><a href="0.1_files/png_1.htm">KPI Change Request Process</a></li>
<li><a href="0.1_files/png_2.htm">KPI Assessment</a></li>
<li><a href="0.1_files/png_3.htm">Activate KPI</a></li>
</ul>
</body>
</noframes>
</frameset>
一旦我这样做,我就会收到错误消息:
对象不支持属性或方法“FindShapeXML”
哪个指向这条线:
var shapeNode = parent.parent.FindShapeXML (pageID, shapeID);
当我将框架集加载到其原始页面而不是将该页面放入
中时,这行代码运行良好
基于以上文章,我尝试按如下方式使用monkey patchparent.parent
,但它并没有解决我的问题:
parent.parent = parent.parent.document.getElementById('ProcessExplorer').contentWindow;
。。。我猜这不适用于父对象。父对象是受保护的对象吗?如果我试图设置parent.parent='somestring'
它也没有效果
是否有任何方法可以实现我在这里想要的-即代理parent.parent
,以便它指向我的iframe#ProcessExplorer
,而不是top
窗口???这是一个很好的问题表述。事实上,我无意中发现了同样的问题,因为我的Visio发布到了。没有人能给出提示?有些人在这种情况下建议使用$(this.nexist)(“someClass”)。也许$(这个)。最近的(“ProcessExplorer”)能用吗?@BorisZinchenko我明天会找出这个的代码,看看!这个问题的表述很好。事实上,我无意中发现了同样的问题,因为我的Visio发布到了。没有人能给出提示?有些人在这种情况下建议使用$(this.nexist)(“someClass”)。也许$(这个)。最近的(“ProcessExplorer”)能用吗?@BorisZinchenko我明天会找出这个的代码,看看!
parent.parent = parent.parent.document.getElementById('ProcessExplorer').contentWindow;