• javascript实现让网页逃不出框架


      有的时候整个网站都需要通过框架来访问,但某些应该在框架里显示才合理的页面经常会单独显示(如从新窗口中打开、从外部网站链接进来等情况)。
      今天想到了一个办法处理,在此分享。

      假设网站中有一个首页(框架页,首页框架包含一个头部页(header.aspx)、左边栏(left.aspx)、主体(main.aspx))、N多其它要在主体里显示的页面。那么有如下代码:

      1.在“N多其它要在主体里显示的页面”加上这个代码:

    <script type="text/javascript">
    if (!top){
    var currentUrl=window.location.pathname;
    top.location
    = "default.aspx?url="+currentUrl; //带参数的跳转
    }
    </script>

      2.在header.aspx(或left.aspx)里加如下代码:
        <script type="text/javascript">
    <!--
    Request
    = {
    QueryString :
    function(item){
    var svalue = top.location.search.match(new RegExp('[\?\&]' + item + '=([^\&]*)(\&?)','i'));
    return svalue ? svalue[1] : svalue;
    }
    }

    var mainurl=Request.QueryString('url'); //读取url的值
    if(mainurl && mainurl!='' && mainurl!='/')
    {
    top.document.getElementById(
    'main').src=mainurl; //main为主体框架的id
    }
    -->
    </script>

      3.在default.aspx里加如下代码
        <script type="text/javascript">
    if (top){
    top.location
    = "default.aspx"; //防止被放入框架中
    }
    </script>

  • 相关阅读:
    【读书笔记】房龙-人类的故事
    【读书笔记】曼昆-经济学原理:宏观经济学分册
    【读书笔记】曼昆-经济学原理:微观经济学分册
    ES6数组去重
    switch语句
    if语句的优化
    程序的三大结构
    NaN
    js中常见的数据类型
    变量的命名规则
  • 原文地址:https://www.cnblogs.com/flashlm/p/JavaScriptKeepInFrame.html
Copyright © 2020-2023  润新知