在iframe中我将src
设置为包含Silverlight Web部件的页面,它不生成任何锚元素,但在silverlight Web部件上有我们可以单击的文本,他们将重定向页面到一个新的网址。
问题是url总是在iframe而不是父窗口中打开。我尝试了以下事项:
<base target="_search" />
<base target="_top" />
<base target="_parent" />
在我的iframe页面的<head></head>
内,没有""
和/
但没有效果。
Silverlight是一个Sharepoint组件,因此我无法更改它或查看代码以了解它是如何打开链接的,所以我无能为力。
我非常想知道是否还有其他暴力方法强制在父窗口中打开链接?谢谢你的帮助。
答案 0 :(得分:2)
如果这是我一直在努力的相同问题(在iFrame中的sharepoint中添加组织浏览器),今天这可能会有所帮助。在包含silverlight Web部件的页面上,通过不同页面上的iFrame查看,我覆盖了silverlight用来更改URL的window.open函数。下面我更改父窗口的URL,以便后续导航在主窗口中进行,iframe对用户完全透明。
这可能对你有用,没试过,但我假设一旦你到达顶部框架你就能找到你的其他iframe。在我的案例中,这也是跨域的。
<script>
//Window.open override - catches HTMLWindow.Navigate from silverlight hyperlink
window.open = function (open) {
return function (url, name, features) {
window.top.location = url;
return false;
};
}(window.open);
</script>