JavaScript入门教程(6) Window窗口对象


Posted in Javascript onJanuary 31, 2009

JavaScript中的Window窗口对象
他是JavaScript中最大的对象,它描述的是一个浏览器窗口。一般要引用它的属性和方法时,不需要用“window.xxx”这种形式,而直接使用“xxx”。一个框架页面也是一个窗口。
Window窗口对象有如下属性:
name 窗口的名称,由打开它的连接(<a target="...">)或框架页(<frame name="...">)或某一个窗口调用的 open() 方法(见下)决定。一般我们不会用这个属性。
status 指窗口下方的“状态栏”所显示的内容。通过对 status 赋值,可以改变状态栏的显示。
opener 用法:window.opener;返回打开本窗口的窗口对象。注意:返回的是一个窗口对象。如果窗口不是由其他窗口打开的,在 Netscape 中这个属性返回 null;在 IE 中返回“未定义”(undefined)。undefined 在一定程度上等于 null。注意:undefined 不是 JavaScript 常数,如果你企图使用“undefined”,那就真的返回“未定义”了。
self 指窗口本身,它返回的对象跟 window 对象是一模一样的。最常用的是“self.close()”,放在<a>标记中:“<a href="javascript:self.close()">关闭窗口</a>”。
parent 返回窗口所属的框架页对象。
top 返回占据整个浏览器窗口的最顶端的框架页对象。
history 历史对象,见下。
location 地址对象,见下。
document 文档对象,见下。
Window窗口对象有如下方法:
第一个方法是open() 打开一个窗口。
用法:

open(<URL字符串>, <窗口名称字符串>, <参数字符串>);

说明:
<URL字符串>:描述所打开的窗口打开哪一个网页。如果留空(''),则不打开任意网页。
<窗口名称字符串>:描述被打开的窗口的名称(window.name),可以使用'_top'、'_blank'等内建名称。这里的名称跟“<a href="..." target="...">”里的“target”属性是一样的。
<参数字符串>:描述被打开的窗口的样貌。如果只需要打开一个普通窗口,该字符串留空(''),如果要指定样貌,就在字符串里写上一到多个参数,参数之间用逗号隔开。
例:打开一个 400 x 100 的干净的窗口:
open('','_blank','width=400,height=100,menubar=no,toolbar=no, 
location=no,directories=no,status=no, scrollbars=yes,resizable=yes')

open()的参数
top=# 窗口顶部离开屏幕顶部的像素数
left=# 窗口左端离开屏幕左端的像素数
width=# 窗口的宽度
height=# 窗口的高度
menubar=... 窗口有没有菜单,取值yes或no
toolbar=... 窗口有没有工具条,取值yes或no
location=... 窗口有没有地址栏,取值yes或no
directories=... 窗口有没有连接区,取值yes或no
scrollbars=... 窗口有没有滚动条,取值yes或no
status=... 窗口有没有状态栏,取值yes或no
resizable=... 窗口给不给调整大小,取值yes或no
注意:open() 方法有返回值,返回的就是它打开的窗口对象。比如
var newWindow = open('','_blank');
这样把一个新窗口赋值到“newWindow”变量中,以后通过“newWindow”变量就可以控制窗口了。
close() 关闭一个已打开的窗口。
用法:
window.close()


self.close()

主要作用是关闭本窗口;
<窗口对象>.close():关闭指定的窗口。注意如果该窗口有状态栏,调用该方法后浏览器会警告:“网页正在试图关闭窗口,是否关闭?”然后等待用户选择是否;如果没有状态栏,调用该方法将直接关闭窗口。
另外Window窗口对象还有如下方法
blur() 使焦点从窗口移走,窗口变为“非活动窗口”。
focus() 是窗口获得焦点,变为“活动窗口”。不过在 Windows 98,该方法只能使窗口的标题栏和任务栏上的相应按钮闪烁,提示用户该窗口正在试图获得焦点。
scrollTo() 用法:[<窗口对象>.]scrollTo(x, y);使窗口滚动,使文档从左上角数起的(x, y)点滚动到窗口的左上角。
scrollBy() 用法:[<窗口对象>.]scrollBy(deltaX, deltaY);使窗口向右滚动 deltaX 像素,向下滚动 deltaY 像素。如果取负值,则向相反的方向滚动。
resizeTo() 用法:[<窗口对象>.]resizeTo(width, height);使窗口调整大小到宽 width 像素,高 height 像素。
resizeBy() 用法:[<窗口对象>.]resizeBy(deltaWidth, deltaHeight);使窗口调整大小,宽增大 deltaWidth 像素,高增大 deltaHeight 像素。如果取负值,则减少。
alert() 用法:alert(<字符串>);弹出一个只包含“确定”按钮的对话框,显示<字符串>的内容,整个文档的读取、Script 的运行都会暂停,直到用户按下“确定”。
confirm() 用法:confirm(<字符串>);弹出一个包含“确定”和“取消”按钮的对话框,显示<字符串>的内容,要求用户做出选择,整个文档的读取、Script 的运行都会暂停。如果用户按下“确定”,则返回 true 值,如果按下“取消”,则返回 false 值。
prompt() 用法:prompt(<字符串>[, <初始值>]);弹出一个包含“确认”“取消”和一个文本框的对话框,显示<字符串>的内容,要求用户在文本框输入一些数据,整个文档的读取、Script 的运行都会暂停。如果用户按下“确认”,则返回文本框里已有的内容,如果用户按下“取消”,则返回 null 值。如果指定<初始值>,则文本框里会有默认值。
Window窗口对象有如下事件:
window.onload;发生在文档全部下载完毕的时候。全部下载完毕意味着不但 HTML 文件,而且包含的图片,插件,控件,小程序等全部内容都下载完毕。本事件是 window 的事件,但是在 HTML 中指定事件处理程序的时候,我们是把它写在<body>标记中的。
window.onunload;发生在用户退出文档(或者关闭窗口,或者到另一个页面去)的时候。与 onload 一样,要写在 HTML 中就写到<body>标记里。
window.onresize;发生在窗口被调整大小的时候。
window.onblur;发生在窗口失去焦点的时候。
window.onfocus;发生在窗口得到焦点的时候。
window.onerror;发生在错误发生的时候。它的事件处理程序通常就叫做“错误处理程序”(Error Handler),用来处理错误。上边已经介绍过,要忽略一切错误,就使用:
function ignoreError() { 
return true; 
} 
window.onerror = ignoreError;
Javascript 相关文章推荐
Flexigrid在IE下不显示数据的处理的解决方法
Oct 24 Javascript
createTextRange()的使用示例含文本框选中部分文字内容
Feb 24 Javascript
javascript实现获取浏览器版本、操作系统类型
Jan 29 Javascript
jquery实现点击向下展开菜单项(伸缩导航)效果
Aug 22 Javascript
JavaScript在网页中画圆的函数arc使用方法
Nov 13 Javascript
Javascript小技能总结(推荐)
Jun 02 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
Jul 22 Javascript
HTML5 JS压缩图片并获取图片BASE64编码上传
Nov 16 Javascript
js Canvas绘制圆形时钟教程
Feb 06 Javascript
vue.js与后台数据交互的实例讲解
Aug 08 Javascript
在vue中给列表中的奇数行添加class的实现方法
Sep 05 Javascript
countUp.js实现数字动态变化效果
Oct 17 Javascript
JavaScript入门教程(5) js Screen屏幕对象
Jan 31 #Javascript
JavaScript入门教程(3) js面向对象
Jan 31 #Javascript
JavaScript入门教程(2) JS基础知识
Jan 31 #Javascript
JavaScript入门教程(1) 什么是JS
Jan 31 #Javascript
JavaScript库 开发规则
Jan 31 #Javascript
最近项目写了一些js,水平有待提高
Jan 31 #Javascript
js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)
Jan 30 #Javascript
You might like
解析isset与is_null的区别
2013/08/09 PHP
ThinkPHP让分页保持搜索状态的方法
2014/07/02 PHP
php实现xml与json之间的相互转换功能实例
2016/07/07 PHP
PHP7 安装event扩展的实现方法
2019/10/08 PHP
关于Laravel参数验证的一些疑与惑
2019/11/19 PHP
Laravel框架Blade模板简介及模板继承用法分析
2019/12/03 PHP
Extjs ajax同步请求时post方式参数发送方式
2009/08/05 Javascript
js 使用form表单select类实现级联菜单效果
2012/12/19 Javascript
JavaScript实现快速排序(自已编写)
2012/12/19 Javascript
nodejs调用cmd命令实现复制目录
2015/05/04 NodeJs
轻松学习jQuery插件EasyUI EasyUI表单验证
2015/12/01 Javascript
JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法
2016/06/05 Javascript
BootStrap iCheck插件全选与获取value值的解决方法
2016/08/24 Javascript
jQuery 获取select选中值及清除选中状态
2016/12/13 Javascript
解决vue中监听input只能输入数字及英文或者其他情况的问题
2018/08/30 Javascript
vue-cli3全面配置详解
2018/11/14 Javascript
Vue程序调试的方法
2019/06/17 Javascript
js判断鼠标移入移出方向的方法
2020/06/24 Javascript
[52:14]VG vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
[01:04]不如跳舞!DOTA2新英雄玛尔斯的欢乐日常
2019/03/11 DOTA
Python实现简单多线程任务队列
2016/02/27 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
利用Python实现在同一网络中的本地文件共享方法
2018/06/04 Python
对pandas中时间窗函数rolling的使用详解
2018/11/28 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
2018/12/28 Python
Python 20行简单实现有道在线翻译的详解
2019/05/15 Python
django删除表重建的实现方法
2019/08/28 Python
Python操作列表常用方法实例小结【创建、遍历、统计、切片等】
2019/10/25 Python
Python3标准库之functools管理函数的工具详解
2020/02/27 Python
python的launcher用法知识点总结
2020/08/07 Python
Abe’s of Maine:自1979以来销售相机和电子产品
2016/11/21 全球购物
巴基斯坦电子产品购物网站:Home Shopping
2017/09/14 全球购物
汽车销售求职自荐信
2013/10/01 职场文书
市场营销策划方案
2014/06/11 职场文书
城镇居民医疗保险工作总结
2015/08/10 职场文书
详解MySQL集群搭建
2021/05/26 MySQL