代码改变世界

【JavaScript】if (window == top)top.location.href = "index.aspx";的意思

2010-05-12 14:53  Peter Jin  阅读(2778)  评论(0编辑  收藏  举报

<script type="text/javascript">
if (window == top)top.location.href = "index.aspx";
</script>

这句话的意思就是,如果当前窗口不是被iframe的则转到index.aspx页面。
当直接浏览该页时,发现不是被iframe 的,则转到index.aspx;而在index.aspx中,它是被iframe的,不作变化。

当做WEB项目时,一些后台管理的布局,常常是用框架frameset搭建的,为了防止主框架mainFrame中嵌套的子页面不被直接浏览,于是上面的代码就非常有用了。

常见的后台管理主框架mainFrame布局:
AdminFrame.aspx

 1 <frameset rows="50,*" cols="*" frameborder="no" border="0" framespacing="0">
 2       <frame src="AdminFrameTop.aspx" name="head" frameborder="no" scrolling="No" 
                noresize="noresize" id="topFrame" title="topFrame" />
 4       <frameset name="myFrame" cols="199,*" frameborder="no" border="0" 
                   framespacing="0">
 5             <FRAME name="leftFrame" marginWidth="0" marginHeight="0" 
                      src="AdminFrameLeft.aspx" noResize target="main">
 6             <FRAME frameborder="no" name="main" marginWidth="10" 
                      marginHeight="10" src="AdminFrameMain.aspx" frameBorder="0" 
                      noResize target="_self">
 8       </frameset>
 9 </frameset>
10 <noframes><body>
11     </body>
12 </noframes>