一. 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>这个人可以是。您可以尝试刷新页面或到另一个 到页面,形式将永远不会弹出。

JS window.open()财产的更多相关文章

  1. JS:window.onload的使用介绍

    作者: 字体:[增加 减小] 类型:转载 时间:2013-11-13我要评论 window.onload在某些情况下还是比较实用的,比如加载时执行哪些脚本等等,下面有几个不错的示例,需要的朋友可以参考 ...

  2. 【分治-前缀积后缀积】JS Window @2018acm徐州邀请赛G

    问题 G: JS Window 时间限制: 2 Sec  内存限制: 512 MB 题目描述 JSZKC has an array A of N integers. More over, he has ...

  3. JS window.name跨域封装

    JS window.name 跨域封装 function CrossDomainName(target, agent, callback, security) { if (typeof target ...

  4. JS window,onload 与 $().read()

    JS:window.onload的使用介绍 .在body标签里面 .在JS语句调用 .同时调用多个函数 .JS调用多个函数 .自定义的函数多次调用 jquery $(document).ready() ...

  5. JS window对象 返回前一个浏览的页面 back()方法

    JS window对象 返回前一个浏览的页面 back()方法,加载 history 列表中的前一个 URL. 语法: window.history.back();   返回前一个浏览的页面 back ...

  6. js window.onload 加载多个函数和追加函数

    平时做项目 经常需要使用window.onload, 用法如下: function func(){alert("this is window onload event!");ret ...

  7. JS:window.onload的使用

    1.最简单的调用方式 直接写到html的body标签里面,如: (html) (body onload="func()") (/body) (/html) 2.在JS语句调用 (s ...

  8. js window.open() 父窗口与子窗口的互相调用(未必有用)

    javascript 父窗口与子窗口的互相调用 <html> <head></head> <body> 主要实现父子关系的页面 window.opene ...

  9. js window.onload事件

    1.最简单的调用方式 直接写到html的body标签里面,如: ? 1 2 3 4     <html>       <body onload="func()"& ...

随机推荐

  1. hnnu 11546 Sum of f(x) (求一个数的全部约数和)

    代码: #include<cstdio> #include<cstring> #define N 200000 using namespace std; long long f ...

  2. VS2008 环境中完美搭建 Qt 4.7.4 静态编译的调试与发布(好像很不错,有六张插图说明)good

    为什么要在VS2008中使用QT静态编译呢?很简单,因为VS2008编译器编译出来的文件比mingw编译的要几乎小一半. 好了现在我们来做些准备工作,VS2008自然要安装的,然后打上SP1的补丁.然 ...

  3. 浅谈 PHP 神盾的解密过程

    原文:浅谈 PHP 神盾的解密过程 前些日子一个朋友丢了个shell给我,让我帮忙解密,打开源码看了下写着是 “神盾加密” , 牛逼闪闪的样子.百度下发现神盾是个很古老的东西,最后一次更新是在 201 ...

  4. C语言编写的bmp读写程序

    C语言编写的bmp读写程序 建议先把bmp的数据存储格式了解下 <span style="font-size:16px;">#include "Windows ...

  5. Android经常使用开源组件汇总

    http://www.cnblogs.com/scige/p/3456790.html UI相关 图片 Android-Universal-Image-Loader:com.nostra13.univ ...

  6. 啊我V办我偶看篇未改片考i

    http://pan.baidu.com/share/link?shareid=3011665141&uk=338692646&third=15                http ...

  7. 《火球——UML大战需求分析》(第1章 大话UML)——1.3 行为型的UML(Behavior Diagram)

    说明: <火球——UML大战需求分析>是我撰写的一本关于需求分析及UML方面的书,我将会在CSDN上为大家分享前面几章的内容,总字数在几万以上,图片有数十张.欢迎你按文章的序号顺序阅读,谢 ...

  8. cowboy rest

    REST Flowcharts 这章节将通过一些列不同的流程图来介绍REST处理状态机. 一个请求主要有四条路线,一个是方法OPTIONS. 一个是方法GET和HEAD.一个是PUT.POST和PAT ...

  9. 一起来开发Android的天气软件(四)——使用Gson解析数据

    离上一篇文章过去才4.5天,我们赶紧趁热打铁继续完毕该系列的天气软件的开发. 承接上一章的内容使用Volley实现网络的通信.返回给我们的是这一串Json数据{"weatherinfo&qu ...

  10. Struts2 开发环境搭建

    一.开发环境 eclipse+tomcat+struts-2.2.3        eclipse下载地址:http://www.eclipse.org/downloads/        tomca ...