• JS window.open()财产


    一. Window 对象

    Window 对象是 JavaScript 顶级对象层次。

    Window 对象表示一个浏览器窗口或帧。

    Window 在对象 <body> 或 <frameset> 每次出现时被自己主动创建。

    二.

    open() 方法用于打开一个新的浏览器窗体或查找一个已命名的窗体。

    三.

    window.open(URL,name,features,replace)

    參数描写叙述
    URL 一个可选的字符串。声明了要在新窗体中显示的文档的 URL。假设省略了这个參数,或者它的值是空字符串,那么新窗体就不会显示不论什么文档。

    name 一个可选的字符串,该字符串是一个由逗号分隔的特征列表,当中包含数字、字母和下划线。该字符声明了新窗体的名称。这个名称能够用作标记 <a> 和 <form> 的属性 target 的值。

    假设该參数指定了一个已经存在的窗体,那么 open() 方法就不再创建一个新窗体,而仅仅是返回对指定窗体的引用。

    在这样的情况下。features 将被忽略。

    features 一个可选的字符串,声明了新窗体要显示的标准浏览器的特征。假设省略该參数,新窗体将具有全部标准特征。

    窗体特征这个表格中,我们对该字符串的格式进行了具体的说明。

    replace

    一个可选的布尔值。规定了装载到窗体的 URL 是在窗体的浏览历史中创建一个新条目,还是替换浏览历史中的当前条目。支持以下的值:

    • true - URL 替换浏览历史中的当前条目。
    • false - URL 在浏览历史中创建新的条目。

    四.窗体特征(Window Features)

    channelmode=yes|no|1|0 是否使用剧院模式显示窗体。

    默觉得 no。

    directories=yes|no|1|0 是否加入文件夹button。默觉得 yes。
    fullscreen=yes|no|1|0 是否使用全屏模式显示浏览器。默认是 no。

    处于全屏模式的窗体必须同一时候处于剧院模式。

    height=pixels 窗体文档显示区的高度。以像素计。

    left=pixels 窗体的 x 坐标。

    以像素计。

    location=yes|no|1|0 是否显示地址字段。默认是 yes。

    menubar=yes|no|1|0 是否显示菜单条。默认是 yes。
    resizable=yes|no|1|0 窗体是否可调节尺寸。默认是 yes。

    scrollbars=yes|no|1|0 是否显示滚动栏。默认是 yes。

    status=yes|no|1|0 是否加入状态栏。默认是 yes。
    titlebar=yes|no|1|0 是否显示标题栏。

    默认是 yes。

    toolbar=yes|no|1|0 是否显示浏览器的工具栏。

    默认是 yes。

    top=pixels 窗体的 y 坐标。
    width=pixels 窗体的文档显示区的宽度。以像素计。

    五.

    注意:     

    window.open(URL,name,features,replace)

    假设name使用名字已经存在,那么不会创建一个新的窗体,而是会返回对已经存在的窗体的引用。

    否则。则创建一个新的窗体。

    我就是没有注意这点,网页全屏时候。花了非常多时间。

    六.详细业务功能

    6.1 打开一个全屏的窗体

    <script type="text/javascript">

    window.open("http://google.com/",'新开googleWin',"fullscreen=1")

    </script>

    6.2 使本页面全屏

    解决方式:先打开一个全屏的目标窗体,然后关闭本窗体。

    代码:

    <script type="text/javascript">

         var url=document.location.href; //获得本窗体属性名
          newWin=window.open(url,'','fullscreen=1,scrollbars=0');      
          window.opener=null;//出掉关闭时候的提示窗体
          window.open('','_self'); //ie7      
          window.close();

    </script>

    注意:假设你在open方法中指定第二个參数,并为他赋予特定的值话。那么第二次使用上面方法,将无法创建新的窗体,由于系统默认的返回已经存在窗体的索引。

    按ESC退出全屏

    <script type="text/javascript">

    // Esc退出全屏
          function exitFullScreenMe()
             {
                 var esc=window.event.keyCode;
                 if(esc==27) //推断是不是按的Esc键,27表示Esc键的keyCode.
                 {
                  var url=document.location.href;
                  
           win=window.open(url,'','fullscreen=0,directories=1,location=1,menubar=1,resizable=1,scrollbars=1,status=1,titlebar=1,toolbar=1'); //让新打开的窗体全屏                          
           
           window.opener=null;//出掉关闭时候的提示窗体
           window.open('','_self');//ie7          
           window.close(); //先关闭老的窗体          
                     
                 }
             }
             document.onkeydown = exitFullScreenMe ; //当onkeydown(按键触发) 事件发生时调用hotkey函数

    </script>

    6.3同一时候弹出两个窗体

    <script type="text/javascript">

    window.open("http://google.com/",'新开googleWin1',"height=300, width=300, top=0, left=0,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=n o, status=no")

    window.open("http://google.com/",'新开googleWin2',"height=300, width=300, top=0, left=400,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=n o, status=no")
    </script>

    注意:(1)窗体的名字不能同样。但能够都为空;

    (2)要注意两个窗体的布局,是否符合你的要求。

    6.4

    第一次进入页面才弹出窗体.cookie解决

    首先,将例如以下代码增加主页面HTML的<HEAD>区:

      <script>
      function openwin(){
      window.open("page.html","","width=200,height=200")
      }
      function get_cookie(Name) {
      var search = Name + "="
      var returnvalue = "";
      if (document.cookie.length > 0) {
      offset = document.cookie.indexOf(search)
      if (offset != -1) {
      offset += search.length
      end = document.cookie.indexOf(";", offset);
      if (end == -1)
      end = document.cookie.length;
      returnvalue=unescape(document.cookie.substring(offset, end))
      }
      }
      return returnvalue;
      }  
      function loadpopup(){
      if (get_cookie('popped')==''){
      openwin()
      document.cookie="popped=yes"
      }
      }
      </script>

      然后。使用<body onload="loadpopup()">(注意,不openwin但loadpop啊!)更换任何原有的主网页<BODY>这个人可以是。您可以尝试刷新页面或到另一个 到页面,形式将永远不会弹出。

  • 相关阅读:
    Android6.0权限组申请
    Win10安装程序出现error code 2502 2503
    StartUML2.8破解
    Batchsize与learning rate
    Tensorflow 多gpu训练
    centos7系统时间修复
    服务器安装小结
    caffe与tensorflow中的pooling
    MixConv
    blazeFace
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/4573164.html
Copyright © 2020-2023  润新知