window对象的常用方法和作用

window对象常用方法 对话框: 1.alert(str):提示对话框,显示str中的内容; 2.confirm(str):确认对话框,显示str中的内容,按确定返回true,否则返回false; 3.prompt():输入框,在页面接受用户输入,并返回输入的内容。 定时器: 1.setTimeout(exp,time):一次性闹钟,设定一个时间来执行代码;exp是要执行的语句,time是间隔时间,单位是毫秒,返回启动的定时器; 2.clearTimeout(tID):停止启动的定时器,tID为启动的定时器对象; 3 阅读详情

 

window对象有以下方法:  

open   
close   
alert   
confirm   
prompt   
setTimeout   
clearTimeout   
setInterval   
clearInterval   
moveBy   
moveTo   
resizeBy   
resizeTo   
scrollBy   
scrollTo   
find   
back   
forward   
home   
stop   
print   
blur   
focus   
captureEvent   
enableExternalCapture   
disableExternalCapture   
handleEvent   
releaseEvent   
routeEvent   
scroll   

  1. open方法
  
  语法格式:
  

window.open(URL,
窗口名称,窗口风格
)  
  功能:打开一个新的窗口,并在窗口中装载指定URL地址的网页。
  

  说明:
  

open
方法用于打开一个新的浏览器窗口,并在新窗口中装入一个指定的URL地址
  

   
open
方法在打开一个新的浏览器窗口时,还可以指定窗口的名称(第二个参数)
   
open
方法在打开一个新的浏览器窗口时,还可以指定窗口的风格(第三个参数)
  

窗口风格有以下选项,这些选项可以多选,如果多选,各选项之间用逗号分隔:
   
toolbar
:指定窗口是否有标准工具栏。当该选项的值为1yes时,表示有标准
  

工具栏,当该选项的值为0no时,表示没有标准工具栏;
   
location
:指定窗口是否有地址工具栏,选项的值及含义与toolbar相同;
   
directories
:指定窗口是否有链接工具栏,选项的值及含义与toolbar相同;
   
status
:指定窗口是否有状态栏,选项的值及含义与toolbar相同;
   
menubar
:指定窗口是否有菜单,选项的值及含义与toolbar相同;
   
scrollbar
:指定当前窗口文档大于窗口时是否有滚动条,选项的值及含义与
  

toolbar
相同;
   
resizable
:指定窗口是否可改变大小,选项的值及含义与toolbar相同;
   
width
:以像素为单位指定窗口的宽度,已被innerWidth取代;
   
height
:以像素为单位指定窗口的高度,已被innerHeight取代;
   
outerWidth
:以像素为单位指定窗口的外部宽度;
   
outerHeight
:以像素为单位指定窗口的外部高度;
   
left
:以像素为单位指定窗口距屏幕左边的位置;
   
top
:以像素为单位指定窗口距屏幕顶端的位置;
   
alwaysLowered
:指定窗口隐藏在所有窗口之后,选项的值及含义与toolbar相同
  

   
alwaysRaised
:指定窗口浮在所有窗口之上,选项的值及含义与toolbar相同;
   
dependent
:指定打开的窗口为当前窗口的一个子窗口,并随着父窗口的关闭而
  

关闭,选项的值及含义与toolbar相同;
   

hotkeys
:在没有菜单栏的新窗口中设置安全退出的热键,选项的值及含义与
  

toolbar
相同;
   

innerHeight
:设定窗口中文档的像素高度;
   

innerWidth
:设定窗口中文档的像素宽度;
   

screenX
:设定窗口距离屏幕左边界的像素长度;
   

screenY
:设定窗口距离屏幕上边界的像素长度;
   

titleBar
:指明标题栏是否在新窗口中可见,选项的值及含义与toolbar相同;
   

z-look
:指明当窗口被激活时,不能浮在其它窗口之上,选项的值及含义与
  

toolbar
相同。
   

open
方法返回的是该窗口的引用。
   

小技巧:该方法经常用于在打开一个网页时自动打开另一个窗口。
  

6-2-1:编制一个小程序,它用于在打开当前窗口时自动打开另一个窗口,要
  

求该窗没有标准工具栏、地址栏、链接工具栏、菜单栏,但有状态栏,窗口中打
  

开的网页地址为:http://www.dlrtvu.edu.cn
  

2. close
方法
  
语法格式:
  

window.close()  
功能:close方法用于自动关闭浏览器窗口。
  

   3. alert
方法
  
语法格式:
  

window.alert(
提示字符串
)  
功能:弹出一个警告框,在警告框内显示提示字符串文本。
  

   4. confirm
方法
  
语法格式:
  

window.confirm(
提示字符串
)  
功能:显示一个确认框,在确认框内显示提示字符串,当用户单击确定按钮
  

时该方法返回true,单击取消时返回false
  

   5. prompt
方法
  
语法格式:
  

window.prompt(
提示字符串,缺省文本
)  
功能:显示一个输入框,在输入框内显示提示字符串,在输入文本框显示缺省文
  

本,并等待用户输入,当用户单击确定按钮时,返回用户输入的字符串,当
  

单击取消按钮时,返回null值。
  

   6. setTimeout
方法
  
语法格式:
  

window.setTimeout(
代码字符表达式,毫秒数
)  
功能:定时设置,当到了指定的毫秒数后,自动执行代码字符表达式。
  

7. clearTimeout
方法
  
语法格式:
  

window.clearTimeout(
定时器
)  
功能:取消以前的定时设置,其中的参数是用setTimeout设置时的返回值。
  

   8. setInterval
方法
  
语法格式:
  

window.setInterval(
代码字符表达式,毫秒数
)  
功能:设定一个时间间隔后(第二个参数),反复执行代码字符表达式的内容
  

9. clearInterval
方法
  
语法格式:
  

window.clearInterval(
时间间隔器
)  
功能:取消setInterval设置的定时。其中的参数是setInterval方法的返回值。
  

10. moveBy
方法
  
语法格式:
  

window.moveBy(
水平位移量,垂直位移量
)  
功能:按照给定像素参数移动指定窗口。第一个参数是窗口水平移动的像素,第
  

二个参数是窗口垂直移动的像素。
  

   11.moveTo
方法
  
语法格式:
  

window.moveTo(x,y)  
功能:将窗口移动到指定的指定坐标(x,y)处。
  

12. resizeBy
方法
  
语法格式:
  

window.resizeBy(
水平,垂直
)  
功能:将当前窗口改变指定的大小(x,y),当xy的值大于0时为扩大,小于0
  

为缩小。
  

13. resizeTo
方法
  
语法格式:
  

window.resizeTo(
水平宽度,垂直宽度
)  
功能:将当前窗口改变成(x,y)大小,xy分别为宽度和高度。
  

14. scrollBy
方法
  
语法格式:
  

window.scrollBy(
水平位移量,垂直位移量
)  
功能:将窗口中的内容按给定的位移量滚动。参数为正数时,正向滚动,否则反
  

向滚动。
  

15. scrollTo
方法
  
语法格式:
  

window.scrollTo(x,y)  
功能:将窗口中的内容滚动到指定位置。
  

16.find
方法
  
语法格式:
  

window.find()  
功能:当触发该方法时,将弹出一个“find”(查找)对话窗口,并允许用户在触
  

find方法的页面中查找一个字符串。
  

注:该属性在IE5.5Netscape6.0中都不支持。
  

17. back
方法
  
语法格式:
  

window.back()  
功能:模拟用户点击浏览器上的后退按钮,将页面转到浏览器的上一页。
  

说明:仅当当前页面存在上一页时才能进行该操作。
  

注:IE5.5不支持该方法,Netscape6.0支持。
  

18. forward
方法
  
语法格式:
  

window.forward()  
功能:模拟用户点击浏览器上的前进按钮,将页面转到浏览器的下一页。
  

说明:仅当当前页面存在下一页时才能进行该操作。
  

注:IE5.5不支持该方法,Netscape6.0支持。
  

19. home
方法
  
语法格式:
  

window.home()  
功能:模拟用户点击浏览器上的主页按钮,将页面转到指定的页面上。
  

注:IE5.5不支持该方法,Netscape6.0支持。
  

20. stop
方法
  
语法格式:
  

window.stop()  
功能:模拟用户点击浏览器上的停止按钮,终止浏览器的下载操作。
  

注:IE5.5不支持该方法,Netscape6.0支持。
  

21. print
方法
  
语法格式:
  

window.print()  
功能:模拟用户点击浏览器上的打印按钮,通知浏览器打开打印对话框打印
  

当前页。
  
        
22. blur
方法
  
语法格式:
  

window.blur()  
功能:从窗口中移出焦点。当与focus方法合用时必须小心,因为可能导致焦点
  

不断移进移出。
  

23. focus
方法
  
语法格式:
  

window.focus()  
功能:使窗口中得到焦点。当与blur方法合用时必须小心,因为可能导致焦点不
  

断移进移出。

24. captureEvent
方法  
语法格式:
  

window.captureEvent(Event)         
window.captureEvent(
事件1|事件2|...|事件
n)  
功能:捕捉指定参数的所有事件。由于能够捕获哪些由本地程序自己处理的事件
  

,所以程序员可以随意定义函数来处理事件。如果有多个事件需要捕捉,各事件
  

之间用管道符“|”隔开。可捕捉的事件类型如下:
  

Event.ABORT   

Event.BLUR   

Event.CHANGE   

Event.CLICK   

Event.DBLCLICK   

Event.DRAGDROP   

Event.ERROR   

Event.FOCUS   

Event.KEYDOWN   

Event.KEYPRESS   

Event.KEYUP   

Event.LOAD   

Event.MOUSEDOWN   

Event.MOUSUEMOVE   

Event.MOUSEOUT   

Event.MOUSEOVER   

Event.MOUSEUP   

Event.MOVE   

Event.RESET   

Event.RESIZE   

Event.SELECT   

Event.SUBMIT   

Event.UNLOAD   

25. enableExternalCapture
事件
  
语法格式:
  

window.enableExternalCapture(event)  
功能:enableExternalCapture方法用于捕捉通过参数传入的外部事件。
  

26. disableExternalCapture
事件
  
语法格式:
  

window.disableExternalCapture()  
功能:取消enableExternalCapture方法的设置,终止对外部事件的捕捉。
  

27. handleEvent
事件
  
语法格式:
  

window.handleEvent(event)  
功能:触发指定事件的事件处理器。
  

28. releaseEvent
事件
  
语法格式:
  

window.releaseEvent(event)  
window.releaseEvent(
事件1|事件2|...|事件
n)  
功能:释放通过参数传入的已被捕捉的事件,这些事件是由
  

window.captureEvent
方法设置的,可释放的事件与captureEvent相同。
  

29. routeEvent
事件
  
语法格式:
  

window.releaseEvent(event)  
功能:把被捕捉类型的所有事件转交给标准事件处理方法进行处理,可转交的事
  

件与captureEvent相同。
  

30 scroll
事件
  
语法格式:
  

window.scroll(X
坐标,Y坐标
)  
功能:将窗口移动到指定的坐标位置。
  

6-2-2 window
对象的属性
  
window
对象具有如下属性:
  

status   

statusbar   

statusbar.visible   

defaultstatus   

location   

locationbar   

locationbar.visible   

self   

name   

closed   

frames   

frames.length   

length   

document   

history   

innerHeight   

innerWidth   

menubar   

menubar.visible   

opener   

outerHeight   

outerWidth   

pageXOffset   

pageYOffset   

parent   

personalbar   

personalbar.visible   

scrollbar   

scrollbar.visible   

toolbar   

toolbar.visible   

top   

1. status属性  
语法格式:
  

window.status=
字符串
  
功能:设置或给出浏览器窗口中状态栏的当前显示信息。
  

小技巧:可以使用该属性设置浏览器窗口状态栏信息。
  

   2. statusbar
属性
  
语法格式:
  

window.statusbar.
属性
  
功能:statusbar属性本身也是一个对象,用于访问它自已的visible属性从而确
  

定状态栏是否可见。
  

注:IE5.5浏览器不支持该属性。
  

3. statusbar.visible
属性
  
语法格式:
  

window.statusbar.visible  
功能:检查状态栏是否可见,如果可见则返回true,反之返回false
  

注:IE5.5浏览器不支持该属性。
  

   4. defaultstatus
属性
  
语法格式:
  

window.defaultstatus[=
字符串
]  
功能:defaultstatus属性值是浏览器窗中状态栏的默认显示信息。
  

   5.location
属性
  
语法格式:
  

window.location=URL  
功能:给出当前窗口的URL信息或指定打开窗口的URL
  

   6. locationbar
属性
  
语法格式:
  

window.locationbar.
属性
  
功能:locationbar属性也可以看成是一个子对象,这个属性用来获取它自已的
  

visible
属性来确定位置栏是否可见。
  

到目前为止,该属性只有一个子属性:visible
  

注:IE5.5不支持该属性。
  

7. locationbar.visible
属性
  
语法格式:
  

window.locationbar.visible  
功能:返回位置栏是否可见,如果可见返回true,反之返回false
  

注:IE5.5不支持该属性。
  

8. self
属性
  
语法格式:
  

window.self.
方法
  
window.self.
属性
  
功能:该属性包含当前窗口的标志,利用这个属性,可以保证在多个窗口被打开
  

的情况下,正确调用当前窗口内的函数或属性而不会发生混乱。
  

   9. name
属性
  
语法格式:
  

window.name=
名称
  
功能:返回窗口名称,这个名称是由window.open()方法创建新窗口时给定的。
  

javascript1.0版本中,这个属性只能用于读取窗口名称,而到了
  

javascript1.1
版本时,可以用这个属性给一个不是用window.open()方法创建的
  

窗口指定一个名称。
  

   10. closed
属性
  
语法格式:
  

window.closed  
功能:closed属性用于返回指定窗口的实例是否已经关闭,如果关闭,返回
true  

,反之返回flase
  

11. frames
属性
  
语法格式:
  

window.frames["
框架名称
"]  
window.frames[
数值
]  
功能:frames属性是一个数组,用来存储文档中每一个由元素创建的子窗口(
  

)实例,其中的下标即可以是次序号也可以是用FRAME元素的NAME属性指定的名
  

称来得到并使用。
  

12. frames.length
属性
  
语法格式:
  

window.frames.length  
功能:frames.length属性用于给出文档中子窗口(框架)实例的个数。
  

13. length
属性
  
语法格式:
  

window.length  
功能:length属性返回一个窗口内的子窗口数目,该属性与
  

window.frame.length
属性的值相同。
  

14. document
属性
  
语法格式:
  

window.document.
事件
  
window.document.
方法
  
window.document.
属性
  
功能:window对象的子对象documentjavascript的核心对象,在脚本中遇到
  

BODY
元素时创建一个实例。
  

15. history
属性
  
语法格式:
  

window.history[
数值
]  
window.history.
方法
()  
window.history.
属性
  
window
对象的子对象historyjavascript的核心对象之一,该属性包含了一个
  

已访问过页面的名称和URL的数组。
  

16. innerHeight
属性
  
语法格式:
  

window.innerHeight=
数值
  
功能:返回或指定浏览器窗口中文档的像素高度,这个高度不包括任何工具栏和
  

组成窗口的页面修饰高度。
  

注:IE5.5不支持该属性。
  

17. innerWidth
属性
  
语法格式:
  

window.innerHeight=
数值
  
功能:返回或指定浏览器窗口中文档的像素宽度,这个宽度不包括任何工具栏和
  

组成窗口的页面修饰宽度。
  

注:IE5.5不支持该属性。
  

18. menubar
属性
  
语法格式:
  

window.menubar.
属性
  
功能:menubar属性也可以看成是一个子对象,这个属性用来获取它自已的
  

visible
属性来确定菜单栏是否可见。
  

到目前为止,该属性只有一个子属性:visible
  

注:IE5.5不支持该属性。
  

19. menubar.visible
属性
  
语法格式:
  

window.menubar.visible  
功能:menubar.visible属性用于返回菜单栏是否可见,如果可见返回true,反
  

之返回false
  

注:IE5.5不支持该属性。
  
20. opener
属性
  
语法格式:
  

window.opener  
window.opener.
方法
  
window.opener.
属性
  
功能:opener属性与打开该窗口的父窗口相联系,当访问子窗口中operer属性时
  

,返回的是父窗口。通过该属性,可以使用父窗口对象中的方法和属性。
  

21. outerHeight
属性
  
语法格式:
  

window.outerHeight  
功能:outerHeight属性用于访问浏览器窗口的像素高度,该高度包括工具栏和
  

装饰边的高度。
  

注:IE5.5不支持该属性。
  

22. outerWidth
属性
  
语法格式:
  

window.outerWidth  
功能:outerWidth属性用于访问浏览器窗口的像素宽度,该宽度包括工具栏和装
  

饰边的宽度。
  

注:IE5.5不支持该属性。
  

23. pageXOffset
属性
  
语法格式:
  

window.pageXOffset=
数值
  
功能:指定浏览器窗口中文档左上角在窗口中的当前水平像素位置。在利用
  

moveTo
移动之前,可以通过该属性来决定是否需要移动窗口。因为该属性返回了
  

可见文档相对整个页面的当前位置。
  

注:IE5.5不支持该属性。
  

24. pageYOffset
属性
  
语法格式:
  

window.pageYOffset=
数值
  
功能:指定浏览器窗口中文档左上角在窗口中的当前垂直像素位置。在利用
  

moveTo
移动之前,可以通过该属性来决定是否需要移动窗口。因为该属性返回了
  

可见文档相对整个页面的当前位置。
  

注:IE5.5不支持该属性。
  

25. parent
属性
  
语法格式:
  

window.parent.frames[
数值
]  
window.parent.framesName  
功能:访问各个子窗口(多框架)所在的父窗口。
  

26. personalbar
属性
  
语法格式:
  

window.personalbar.
属性
  
功能:personalbar属性本身也是一个对象,用于访问其自身的visible属性来确
  

定个人栏是否可见。
  

注:IE5.5不支持该属性。
  

27. personalbar.visible
属性
  
语法格式:
  

window.personalbar.visible  
功能:确定个人栏是否可见,如果可见则返回true,反之返回false
  

注:IE5.5不支持该属性。
  

28. scrollbars
属性
  
语法格式:
  

window.scrollbars.
属性
  
功能:scrollbars属性本身也是一个对象,用于访问其自身的visible属性来确
  

定滚动栏是否可见。
  

注:IE5.5不支持该属性。
  

29. scrollbars.visible
属性
  
语法格式:
  

window.scrollbars.visible  
功能:scrollbars.visible用于确定滚动栏是否可见,如果可见则返回true,反
  

之返回false
  

注:IE5.5不支持该属性。
  

30. toolbar
属性
  
语法格式:
  

window.toolbar.
属性
  
功能:toolbar属性本身也是一个对象,用于访问它自已的visible属性从而确定
  

工具栏是否可见。
  

注:IE5.5不支持该属性。
  

31. toolbar.visible
属性
  
语法格式:
  

window.toolbar.visible  
功能:toolbar.visible属性用于检查工具栏是否可见,如果可见则返回true
  

反之返回false
  

注:IE5.5不支持该属性。
  

32. top
属性
  
语法格式:
  

window.top.frames[
数值
]  
window.top.frameName  
window.top.
方法
()  
window.top.
属性
  
功能:window对象的top属性用于包含所有装入浏览器的子窗口(多框架)的最顶


使用Window.open方法新建窗口
Window对象表示的是浏览器窗口,它有多种操作,其中一个重要的方法是open,表示新建一个窗口来打开指定页面。例如在a.html中执行以下语句:
window.open("b.html");
则新建一个窗口打开了b.html页面,这和在a.html页面中用一条链接打开页面的效果是一样的:
<a href="b.html" target="_blank">b</html>
window.open对新建窗口的样式可以有更多的控制,例如:窗口大小、是否显示菜单栏、是否显示滚动条、是否显示地址栏等等。其完整的调用语法如下:
window.open(url,windowName,"name1=value1[,name2=value2,[…]]");
其中:url是要打开的页面地址;windowName表示新建窗口的名字,从而可以对其进行控制;最后是一个用字符串表示的参数列表。每一个参数都是名称和值对应的形式,用逗号隔开,其中可以使用的参数如下。
? height
:表示新建窗口的高度;
? width
:表示新建窗口的宽度;
? left
:表示新建窗口到屏幕左边缘的距离;
? top
:表示新建窗口到屏幕顶端的距离。
以上属性的单位均为象素,例如对于800×600的分辨率,left=400则表示新窗口的左边缘处于屏幕的正中间。其余的属性主要是布尔型的,用yes或者1表示开启,用no或者0表示关闭。如果是开启,则yes或者1可省略,例如:toolbar=1等价于toolbar=yes等价于toolbar,下面分别介绍这些属性:
? directories
:是否显示链接工具栏;
? location
:是否显示地址栏;
? menubar
:是否显示菜单栏;
? resizable
:是否允许调整窗口大小;
? scrollbars
:是否显示滚动条;
? status
:是否显示状态栏;
? toolbar
:是否显示工具栏。
例如,下面的代码将显示一个无菜单、无工具条、无滚动条的窗口:
window.open("test3.html","","height=200,width=300, toolbar=0,menubar=0,scrollbars=0");
使用定时器实现JavaScript的延期执行或重复执行
window对象提供了两个方法来实现定时器的效果,分别是window.setTimeout()window.setInterval。其中前者可以使一段代码在指定时间后运行;而后者则可以使一段代码每过指定时间就运行一次。它们的原型如下:
window.setTimeout(expression,milliseconds);
window.setInterval(expression,milliseconds);
其中,expression可以是用引号括起来的一段代码,也可以是一个函数名,到了指定的时间,系统便会自动调用该函数,当使用函数名作为调用句柄时,不能带有任何参数;而使用字符串时,则可以在其中写入要传递的参数。两个方法的第二个参数是milliseconds,表示延时或者重复执行的毫秒数。下面分别介绍两种方法。
1
window.setTimeout方法
该方法可以延时执行一个函数,例如:
<script language="JavaScript" type="text/javascript">
<!--
function hello(){
 alert("hello");
}
window.setTimeout(hello,5000);
//-->
</script>
这段代码将使得页面打开5秒钟后显示对话框“hello”。其中最后一句也可以写为:
window.setTimeout("hello()",5000);
读者可以体会它们的差别,在window.setInterval方法中也有这样的性质。
如果在延时期限到达之前取消延执行,可以使用window.clearTimeout(timeoutId)方法,该方法接收一个id,表示一个定时器。这个id是由setTimeout方法返回的,例如:
<script language="JavaScript" type="text/javascript">
<!--
function hello(){
      alert("hello");
}
var window.clearTimeout(id);
}
//-->
</script>
这样,如果要取消显示,只需单击页面任何一部分,就执行了window.clearTimeout方法,使得超时操作被取消。

2
window.setInterval方法
该方法使得一个函数每隔固定时间被调用一次,是一个很常用的方法。如果想要取消定时执行,和clearTimeout方法类似,可以调用window.clearInterval方法。clearInterval方法同样接收一个setInterval方法返回的值作为参数。例如:
//
定义一个反复执行的调用
var somefunction",10000);
//
取消定时执行
window.clearInterval(id);
上面的代码仅用于说明怎样取消一个定时执行。实际上在很多场合都需要用到setInterval方法,下面将设计一个秒表,来介绍setInterval函数的用途:该秒表将包括两个按钮和一个用于显示时间的文本框。当单击开始按钮时开始计时,最小单位为0.01秒,此时再次单击按钮则停止计时,文本框显示经过的时间。另外一个按钮用于将当前时间清零。其实现代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title> New Document </title>
</head>
<body>
<form action="somepage.asp">
<input type="text" value="0" />
<input type="button" value="
开始" />
<input type="button" value="
重置
" />
</form>
</body>
</html>
<script language="JavaScript" type="text/javascript">
<!--
//
获取表单中的表单域

var txt=document.forms[0].elements["txt1"];
var btnStart=document.forms[0].elements["btnStart"];
var btnReset=document.forms[0].elements["btnReset"]
//
定义定时器的id
var id;
//
10毫秒该值增加
1
var seed=0;

btnStart.onclick=function(){
      //
根据按钮文本来判断当前操作

      if(this.value=="
开始"){
              //
使按钮文本变为停止

              this.value="
停止";
              //
使重置按钮不可用

              btnReset.disabled=true;
              //
设置定时器,每0.01s跳一次
              }else{
              //
使按钮文本变为开始
              this.value="
开始";
              //
使重置按钮可用

              btnReset.disabled=false;
              //
取消定时
              window.clearInterval(id);
      }
}

//重置按钮
btnReset.onclick=function(){
     seed=0;
}
//
让秒表跳一格
function tip(){
      seed++;
      txt.value=seed/100;
}
//-->
</script>
给定时器调用传递参数
无论是window.setTimeout还是window.setInterval,在使用函数名作为调用句柄时都不能带参数,而在许多场合必须要带参数,这就需要想方法解决。例如对于函数hello(_name),它用于针对用户名显示欢迎信息:
var userName="jack";
//
根据用户名显示欢迎信息
function hello(_name){
      alert("hello,"+_name);
}
这时,如果企图使用以下语句来使hello函数延迟3秒执行是不可行的:
window.setTimeout(hello(userName),3000);
这将使hello函数立即执行,并将返回值作为调用句柄传递给setTimeout函数,其结果并不是程序需要的。而使用字符串形式可以达到想要的结果:
window.setTimeout("hello(userName)",3000);
这里的字符串是一段JavaScript代码,其中的userName表示的是变量。但这种写法不够直观,而且有些场合必须使用函数名,下面用一个小技巧来实现带参数函数的调用:
<script language="JavaScript" type="text/javascript">
<!--
var userName="jack";
//
根据用户名显示欢迎信息
function hello(_name){
       alert("hello,"+_name);
}
//
创建一个函数,用于返回一个无参数函数
function _hello(_name){
       return function(){
             hello(_name);
       }
}
window.setTimeout(_hello(userName),3000);
//-->
</script>
这里定义了一个函数_hello,用于接收一个参数,并返回一个不带参数的函数,在这个函数内部使用了外部函数的参数,从而对其调用,不需要使用参数。在window.setTimeout函数中,使用_hello(userName)来返回一个不带参数的函数句柄,从而实现了参数传递的功能。

使用statusdefaultStatus属性改变状态栏信息
statusdefaultStatuswindow对象的属性,用于设置状态栏信息,语法为:
window.status="message";
window.defaultStatus="message";

其中status属性就是用于设置状态栏显示的文本。而defaultStatus表示默认的状态栏信息,例如默认情况下IE浏览器会显示完毕,而Firefox浏览器则显示完成。可以通过defaultStatus来改变这一信息。
使用alertpromptconfirm语句与用户进行交互
这三个语句都是弹出一个对话框,来处理用户输入。它们都是window对象的一个方法,在实际使用时,常常省略window,而直接写成alert("hello")类似的形式。下面分别介绍:
1
alert语句
该语句的原型是:
window.alert(message);
alert
接收一个参数,该参数将转换为字符串直接显示在对话框上,例如:
alert("hello,ajax");
2
prompt语句
该语句的原型是:
window.prompt(message,defaultValue);
prompt
用于让用户输入一个值,其中message表示提示信息,defaultValue表示显示于文本框的初始值;函数返回用户的输入。对话框包括【确定】和【取消】两个按钮,用户单击【确定】按钮则返回文本框中的内容,单击【取消】则返回null。例如:
var userName=window.prompt("
请输入您的姓名:","");
alert("hello,"+userName);
其中prompt提示用户输入其姓名,使用userName变量获取用户输入,并显示欢迎信息。

3confirm语句
该语句的原型是:
window.confirm(message);
其作用是显示一条信息让用户确认,弹出的对话框包括【确定】和【取消】两个按钮,如果用户单击【确定】,则confirm函数返回true,否则返回false。例如下面的语句:
if(confirm("
确定删除该记录吗?")){
       //
删除记录的操作

}else{
       //
不删除记录
}

 

 

JS window对象详解 对于window对象,无论是它的属性,还是方法,都可以省略window前缀。如window.alert()可以简写为alert(),window.open()可以简写为open(),甚至window.document.getElementById()可以简写为document.getElementById(),以此类推。在JavaScript中,窗口常见的操作有两种:一种是“打开窗口”,另一种是“关闭窗口”。在线时钟中,秒针每隔一秒转一次。输入内容,然后点击对话框中的【确定】按钮,就会返回刚刚输入的文本。 阅读详情

相关推荐

window对象

读者朋友们晚上好呀,今天讲window对象,预告下,明天讲document对象~

m0_58875280的博客 335

Window对象常用方法

alert()、confirm()、prompt() 分别用于弹出警告对话框、确认对话框提示输入对话框。 close() 关闭窗口。 focus()、blur() 让窗口获得焦点、失去焦点。 open() 打开一一个新的顶级窗口,用于装载新的URL所指向的地址,并可指定一系列的新属性,包括隐藏菜单等。: resizeBy()、resizeTo() 重设窗口大小。 scrollBy()、scrollTo() 滚动当前窗口中的HTML文档。 setTimeout()、clearTimeout() 设置、删除定

weixin_52358334的博客 1518

javascript 第九章 window对象 笔记

window 对象 window 对象是全局对象,在使用它的属性方法时,不需要带window. 可以直接使用其方法属性。 window 对象常用方法举例: 1.confirm方法: 用于判断,运行结果: 点击确定按钮: 点击取消按钮: ...

weixin_52618349的博客 355

细说JavaScript BOM之window对象

window对象JavaScript中最大的对象,其他对象都是window对象的一部分,window对象表示浏览器的一个实例,在浏览器中它有双重身份,既是通过JavaScript访问浏览器窗口的一个接口,又是ECMAScript标准中规定的Globel(全局)对象。第二个身份说明了我们在网页中定义的任何一个变量、函数对象都会以window作为其全局对象window对象是全局对象,因此所有在全局作用域中声明的变量、函数、对象都会变成window对象的属性、方法对象 基于window对象是全局对象的概念

zhishunet 1497

什么是 window 对象?什么是 document 对象

1、什么是 window 对象 简单来说,document 是 window 的一个对象属性 Window 对象表示浏览器中打开的窗口。 如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。 所有的全局函数对象都属于 Window 对象的属性方法。 它是一个顶层对象,而不是另一个对象的属性,即浏览器的窗口。 ...

鲨鱼不喝水的博客 2595

window对象是什么?

window的介绍

m0_63154316的博客 995

BOM内置对象(一)

BOM内置对象Window对象

syy的博客 436

【JS基础】你真的了解 window对象 吗?

window对象 概述 浏览器里面,window对象(注意,w为小写)指当前的浏览器窗口。它也是当前页面的顶层对象,即最高一层的对象,所有其他对象都是它的下属。一个变量如果未声明,那么默认就是顶层对象的属性。 a = 1; window.a // 1 上面代码中,a是一个没有声明就直接赋值的变量,它自动成为顶层对象的属性。 属性 (举例一些常用 的/红色为重点) window.name window.name 属性是一个字符串,表示当前浏览器窗口的名字。窗口不一定需要名字(默认""),这个属性主要配合超链

Milk~每天分享一点点,技术进步一点点 506

js window对象知识整理

W3C定义:Window 对象表示浏览器中打开的窗口。 菜鸟教程:如果文档包含框架(<frame> 或 <iframe> 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。(所有浏览器均支持window对象window对象是所有浏览器对象的核心,在JavaScript中一切全局变量属性都是window的属性。

FBm的博客 487

【Web APIs】BOM 浏览器对象模型 ① ( BOM 简介 | 常用的 BOM 对象 | BOM 特点 | BOM 与 DOM 对比 | window 对象简介 )

一、BOM 浏览器对象模型 简介 1、BOM 简介 2、常用的 BOM 对象 3、BOM 特点 4、BOM 浏览器对象模型 与 DOM 文档对象模型 对比 二、window 对象简介 1、window 对象作用 2、全局属性 3、全局方法 4、完整代码示例

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 3277

js中哪些地方会用到window

this对象是在运行时基于函数的执行环境绑定的:在全局变量中,this等于window,而当函数被作为某个对象方法调用时,this等于那个对象。在 JavaScript 中,window 对象表示浏览器窗口(通常也称为浏览器窗口或浏览器窗口)。直白来说,比如我们去吃饭要点菜,Window 类似一个菜单,window 是端上桌子的一道菜,至于这道菜色香味以及制作方法 Window 无关,只 window 有关。对象JavaScript中的顶层对象,它代表了浏览器中打开的窗口或者标签页。

前端-尔嵘 1323

BOM-之-window对象location对象的属性方法

BOM-之-window对象location对象window 对象Global作用域窗口关系窗口位置窗口大小窗口位置导航与打开新窗口定时器系统对话框location 对象location 对象的属性Location 对象方法 window 对象       BOM 的核心是 window 对象,表示浏览器打开的窗口的实例。如果文档包含框架(frame 或 iframe 标签),浏览器会为每个框架创建一个额外的 window 对象。    &nbs

weixin_42508745的博客 1029

JavaScriptwindow对象及openclose使用

Window对象 是一个顶级对象,不是任何对象的属性,所以可以不写window.xxx而直接使用内部的属性方法。 实际上,在web前端开发时,所有的全局变量都自动成为window对象的属性 Window对象的属性 Screen History Location Navigator Document(DOM) Window对象方法 alert confirm prompt setIntervel setTimeout clearInterval() open Close(只能关闭使用js打开的浏览器窗口)

weixin_39218464的博客 2482

window 常用的属性方法

window 常用的属性方法      1. open方法   语法格式:  window.open(URL,窗口名称,窗口风格)   功能:打开一个新的窗口,并在窗口中装载指定URL地址的网页。    说明:  open方法用于打开一个新的浏览器窗口,并在新窗口中装入一个指定的URL地址 ;  open方法在打开一个新的浏览器窗口时,还可以指定窗口的名称(第二个参数);  open...

tony_0524的专栏 717

从零开始学前端 - 24. JS BOM之Window对象详解及常用方法

从零开始学前端 - 24. JS BOM之Window对象详解及常用方法   Window 是 BOM 的核心对象,它表示浏览器的一个实例。在浏览器中,Window 对象既是通过 JS 访问浏览器窗口的一个接口,又是 ECMAScript 规定的 Global 对象。 一、 window 相关知识点 1、全局作用域 2、窗口关系及框架 父页面操纵子页面 子页面操纵父页面 3、窗口位置 4、窗口大小 5、打开窗口 6、 定时器 7、弹出框 8、滚动条 二、window 常用属性 三、window 常用方法

qq_39506551的博客 1170

window对象的属性及方法

自定义函数及window的属性、方法

诺一的博客 1854

Window 对象

Window 对象 Window 对象表示浏览器中打开的窗口。 如果文档包含框架(<frame> 或 <iframe> 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。 注意: 没有应用于 window 对象的公开标准,不过所有浏览器都支持该对象Window 对象属性 属性描述 ...

weixin_34292924的博客 221
上一篇: WebService概述
下一篇: java反射机制
flydango1
博客等级 码龄18年 1粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值