• JS window对象的top、parent、opener含义介绍 以及防止网页被嵌入框架的代码


    1.top
    该变更永远指分割窗口最高层次的浏览器窗口。如果计划从分割窗口的最高层次开始执行命令,就可以用top变量。 
    2.opener
    opener用于在window.open的页面引用执行该window.open方法的的页面的对象。例如:A页面通过window.open()方
    法弹出了B页面,在B页面中就可以通过opener来引用A页面,这样就可以通过这个对象来对A页面进行操作。 
    3.parent
    parent用于在iframe,frame中生成的子页面中访问父页面的对象。例如:A页面中有一个iframe或frame,那么iframe
    或frame中的页面就可以通过parent对象来引用A页面中的对象。这样就可以获取或返回值到A页面中。
    4.另外self 指的是当前窗口

    parent与opener的区别:

    parent指父窗口,在FRAMESET中,FRAME的PARENT就是FRAMESET窗口。 
    opener指用WINDOW.OPEN等方式创建的新窗口对应的原窗口。 
    parent是相对于框架来说父窗口对象 
    opener是针对于用window.open打开的窗口来说的父窗口,前提是window.open打开的才有

    document.parentWindow.menthod()調用父頁面的方法

    top实例

    <!DOCTYPE html>

     <html>

     <head> 

    <meta charset="utf-8"> 

    <title>top</title> 
    <script> 
    function check(){ 
        if (window.top!=window.self) { 
            document.write("<p>这个窗口不是最顶层窗口!我在一个框架?</p>") 
        } 
        else{ 
            document.write("<p>这个窗口是最顶层窗口!</p>") 
        } 

    </script> 
    </head> 
    <body> 
    <input type="button" onclick="check()" value="检查窗口"> 
    </body> 
    </html>

    一段很简单的防止网页被嵌入框架的代码javascript代码,大家只要将它放入网页源码的头部,那些流氓就没有办法使用你的网页了。

    <script type="text/javascript">

    if (window!=top) // 判断当前的window对象是否是top对象

    top.location.href =window.location.href; // 如果不是,将top对象的网址自动导向被嵌入网页的网址

    </script>

  • 相关阅读:
    NET 连接池救生员(转载:M$)
    gitflow学习总结
    Apache Zookeeper
    ZZ: C++实现读取整行文本和每次只读入一个单词
    ZZ: C C++ string转char*
    memset
    prinf
    ZZ: C++ int转string from http://pppboy.blog.163.com/blog/static/302037962010378296766/
    XHTML下,JS浮动代码失效的问题 心境
    13个超酷的js显示时间效果 心境
  • 原文地址:https://www.cnblogs.com/ranyonsue/p/6722653.html
Copyright © 2020-2023  润新知