zoukankan      html  css  js  c++  java
  • 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>

  • 相关阅读:
    LC 377. Combination Sum IV
    LC 718. Maximum Length of Repeated Subarray
    使用 Synchronized 关键字
    线程的基本概念
    谈谈 JAVA 的对象序列化
    JAVA 注解的基本原理
    基于 CGLIB 库的动态代理机制
    基于 JDK 的动态代理机制
    反射的基本原理
    泛型的基本原理
  • 原文地址:https://www.cnblogs.com/flashlm/p/JavaScriptKeepInFrame.html
Copyright © 2011-2022 走看看