JavaScript窗口功能指南之关闭窗口

转载 2004年07月01日 10:41:00
标题     JavaScript窗口功能指南之关闭窗口    hktl(转贴)
关键字     JavaScript窗口功能
出处     http://www.ccidnet.com/tech/web/2001/01/19/58_1610.html

JavaScript窗口功能指南之关闭窗口
(作者:听风编译 2001年01月19日 11:35)

  当你创建了一个新窗口时,将open()方法的返回值分配给一个变量非常重要。比如,下面的语句就是创建一个新窗口,然后立即关闭它:

  win = window.open("http://www.docjs.com/", "js");

  win.close();

  每一个浏览器窗口都清楚地与一个window对象对应,所以,当你想引用当前窗口时,你应该使用window对象。下面的语句设置当前窗口的URL:

  window.location.href = "http://www.docjs.com/";

  当你在脚本程序中放置这样一个语句时,你不需要指定window对象,因为当前窗口的存在是默认的:

  location.href = "http://www.docjs.com/";

  注意,self等价于window,所以,self.close()实际上就等于window.close()。

  window.location.href = "http://www.docjs.com/";

关闭窗口
  window.close()关闭指定的浏览器窗口。如果不带窗口引用调用close()函数,JavaScript就关闭当前窗口。在事件处理程序中,你必须指定window.close(),而不能仅仅使用close()。由于JavaScript总静态对象的作用范围,不带对象名字的close()调用等价于document.close()。

  如果你执行close()方法去关闭一个不是由脚本程序打开的窗口,就会出现一个确认对话框让用户选择是否关闭窗口。如果在历史列表中只有当前一个记录,那么在Navigator中就不会出现对话框。然而,如果你使用close()退出最后运行的浏览器实例,确认对话框就会出现。看看下面在2类浏览器中出现的对话框样子:



  点击下面的链接打开一个新窗口,其中内容是tryclose.html:

  Launch Window (with JavaScript)

  Launch Window (with HTML)

  第1个链接使用JavaScript的window.open()方法来打开一个窗口,第2个链接简单地使用TARGET属性实现同样目的:

  <A HREF="javascript:void(window.open('tryclose.html'))">Launch Window (with JavaScript)</A><BR>

  <A HREF="tryclose.html" TARGET="_blank">Launch Window (with HTML)</A>

  页面tryclose.html显示一个按钮,它负责执行window.close()方法:

  <FORM><INPUT TYPE="button" VALUE="Close Window" onClick="window.close()"></FORM>

  当你点击第1个链接打开新窗口后,浏览器就“记住”了它是由一个脚本程序生成的。所以,当你点击按钮时,新窗口不用再确认操作就被关闭。第2个链接是另外一回事了,它不使用任何JavaScript打开一个新窗口,当你点击按钮时,Internet Explorer将显示一个确认对话框。然而,Navigator立即关闭这个窗口,因为,新窗口在会话历史中没有任何文档。

  JavaScript允许你在其他的窗口使用一段脚本程序关闭另外一个窗口。

点击后关闭的窗口
  许多标准的应用程序都有一个About对话框,当用户在其中任何地方点击一次鼠标时,窗口就被关闭。下面就对窗口使用JavaScript来实现同样的效果。首先,请看看打开新窗口的代码:

  <SCRIPT LANGUAGE="JavaScript">

  <!--

  function launchAbout() {

   about = window.open("about.html", "about", "height=75,width=250");

   return false;

  }

  // -->

  </SCRIPT>

  <A HREF="about.html" onClick="return launchAbout()">About</A>

  点击链接后,生成一个新窗口。然后,你可以在其中点击任何地方,就关闭那个窗口。在文件about.html的HEAD区域,添加下面的脚本程序:

  <SCRIPT LANGUAGE="JavaScript">

  <!--

  function closeWin() {

   window.close();

  }

  if (window.Event) document.captureEvents(Event.ONCLICK);

  document.onclick = closeWin;

  // -->

  </SCRIPT>

依赖性窗口
  窗口的依赖性特征定义了是否窗口应该是一个当前窗口的依赖性子窗口。依赖窗口就是当它的父窗口关闭时,它也随即关闭。dependent特征仅仅在Navigator 4和以上版本被支持。然而,我们可以使用一小段JavaScript程序来处理交叉浏览器。让我们使用下面的函数来打开一个依赖性窗口:

  function openDep() {

   win = window.open("depwin.html", "dep", "height=200,width=400");

  }

  如果当前窗口关闭时,或者调入一个新的URL时,我们将使用onUnload事件处理程序来关闭依赖性窗口:

  <BODY onUnload="closeDep()">

  注意,当前文档被卸载时,新窗口将关闭,即使当前窗口仍然打开。下面是closeDep()函数的代码:

  function closeDep() {

   if (win && win.open && !win.closed) win.close();

  }

  注意,在试图关闭前,我们必须检查窗口是否存在。

JavaScript窗口功能指南之关闭窗口

当你创建了一个新窗口时,将open()方法的返回值分配给一个变量非常重要。比如,下面的语句就是创建一个新窗口,然后立即关闭它:   win = window.open("http://www.docj...
  • wangfuying
  • wangfuying
  • 2006年09月09日 16:54
  • 693

JavaScript窗口功能指南之关闭窗口

当你创建了一个新窗口时,将open()方法的返回值分配给一个变量非常重要。比如,下面的语句就是创建一个新窗口,然后立即关闭它:   win = window.open("http://www.docj...
  • dadunqingwa
  • dadunqingwa
  • 2005年01月10日 13:42
  • 1029

JavaScript窗口功能指南之操纵窗口

一旦你得到了表示窗口的变量,你就能通过各种方法来操纵它。在前面的介绍中,我们讨论过close()方法:   win = window.open("http://www.docjs.com/", "js...
  • alex197963
  • alex197963
  • 2007年05月06日 00:28
  • 493

VC++窗口关闭全过程

窗口关闭全过程  一、对于非模态窗口,必须重载OnCancel函数,在函数中调用DestroyWindows()方法,且不能调用基类的函数。因为基类函数中调用的是 EndDialog()方法...
  • whlong4221
  • whlong4221
  • 2012年02月27日 00:43
  • 1581

JavaScript窗口功能指南之定制新窗口

window.open()方法的基本语法结构是:     window.open(sURL, sName);   然而,你可以通过使用2个附加的参数定制新窗口:   window.open(sURL,...
  • alex197963
  • alex197963
  • 2007年05月06日 00:27
  • 525

JavaScript窗口功能指南之创建对话框

 JavaScript支持几种内建的对话框:window.alert()、window.confirm()以及window.prompt()。当弹出一个对话框时,用户就不可以再聚焦到初始页面,除非对话...
  • caocg504
  • caocg504
  • 2008年04月11日 19:28
  • 182

JavaScript窗口功能指南之创建弹出窗口

Internet Explorer 5.5支持一个新的window对象的方法:creatPopup()。你可以向下面一样创建一个弹出窗口:   var popupObj = window.create...
  • alex197963
  • alex197963
  • 2007年05月06日 00:26
  • 563

JavaScript窗口功能指南之创建对话框

JavaScript支持几种内建的对话框:window.alert()、window.confirm()以及window.prompt()。当弹出一个对话框时,用户就不可以再聚焦到初始页面,除非对话框...
  • alex197963
  • alex197963
  • 2007年05月06日 00:31
  • 596

opencv 通过右上角×按钮关闭显示窗口

opencv 通过右上角×按钮关闭显示窗口
  • aaaaa1234567890
  • aaaaa1234567890
  • 2017年12月26日 11:44
  • 108

C++关闭所有窗口

VS2010新建win32空工程,加入c++代码: #include BOOL CALLBACK EnumWindowsProc(HWND hwnd,LPARAM IParam)//回调函数 {...
  • feier7501
  • feier7501
  • 2013年08月18日 16:10
  • 1763
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaScript窗口功能指南之关闭窗口
举报原因:
原因补充:

(最多只允许输入30个字)