Javascript 如何理解我在iframe中从外部站点调用的网页?

Javascript 如何理解我在iframe中从外部站点调用的网页?,javascript,asp.net,asp.net-mvc,iframe,Javascript,Asp.net,Asp.net Mvc,Iframe,我想识别我的站点的任何页面是否从外部站点的iframe调用 我可以更改我的_layout.cshtml 换句话说,我希望有两个布局,一个用于用户直接访问我的站点,另一个用于用户从其他站点访问我的站点(其他站点使用iframe引用我的站点) 我的问题是如何检测这两种类型并更改布局 编辑 我需要知道服务器端的iframe可以更改它。我不想通过javascrip将用户重定向到某些操作 在我的某些观点中,我需要这样的命令,但如何 @{ if(ViewBag.Iframe == true) { lay

我想识别我的站点的任何页面是否从外部站点的iframe调用

我可以更改我的_layout.cshtml

换句话说,我希望有两个布局,一个用于用户直接访问我的站点,另一个用于用户从其他站点访问我的站点(其他站点使用iframe引用我的站点)

我的问题是如何检测这两种类型并更改布局

编辑 我需要知道服务器端的iframe可以更改它。我不想通过javascrip将用户重定向到某些操作 在我的某些观点中,我需要这样的命令,但如何

@{ 
if(ViewBag.Iframe == true)
{
 layout ="_Iframelayout.cshtml"
}
else
{
 layout ="_Normallayout.cshtml"
}

}
看看这个。此链接将帮助您确定您的站点是否在iframe中打开


一旦您确定了这一点,您就可以将用户重定向到特定的控制器操作,并以编程方式更改布局。

您可以使用以下代码,这就是示例

<style>
  html { display :none; }
</style>
<script>
if(self==top){
  window.location = "http://www.mysite.com/my_layout.cs.html";
}else{
  window.location = "http://www.mysite.com/my_layout.cs.html";
}
</script>

html{显示:无;}
if(self==顶部){
window.location=”http://www.mysite.com/my_layout.cs.html";
}否则{
window.location=”http://www.mysite.com/my_layout.cs.html";
}
根据self==top decision将页面重定向到特定类型的布局