javascript-高级对象

    技术2022-05-17  63

    浏览器对象(Navigator)

        提供有关浏览器的信息

      窗口对象(Window)

        Window对象处于对象层次的最顶端,它提供了处理Navigator窗口的方法和属性。

      位置对象(Location)

        Location对象提供了与当前打开的URL一起工作的方法和属性,它是一个静态的对象。

      历史对象(History)

        History对象提供了与历史清单有关的信息。

      文档对象(Document)

        document对象包含了与文档元素(elements)一起工作的对象,它将这些元素封装起来供编程人员使用。

    1.Window窗口对象 是JavaScript中最大的对象,它描述的是一个浏览器窗口。一般要引用它的属性和方法时,不需要用“window.xxx”这种形式,而直接使用“xxx”。一个框架页面也是一个窗口。 属性:     •    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 文档对象,见下。 方法: 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.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;

    window.οnbefοreunlοad="window.event.returnValue='确定要离开吗?'"; 会弹出是否离开本页的对话框;

    浏览器是边装载边解析并执行其中的javascript脚本的,装载完才会执行onload。

    还有

    navigate方法

    setInterval方法:循环执行某段程序;

    setTimeout方法:一段时间后执行某段程序

    showModalDialog

    showModalessDialog

    2.Document文档对象是window和frames对象的一个属性,是显示于窗口或框架内的一个文档。它包含了文档从<head>到</body>的内容。 用法:document (当前窗口) 或 <窗口对象>.document (指定窗口) 属性:     •    document.title //设置文档标题等价于HTML的<title>标签     •    document.bgColor //设置页面背景色     •    document.fgColor //设置前景色(文本颜色)     •    document.linkColor //未点击过的链接颜色     •    document.alinkColor //激活链接(焦点在此链接上)的颜色     •    document.vlinkColor //已点击过的链接颜色     •    document.URL //设置URL属性从而在同一窗口打开另一网页     •    document.fileCreatedDate //文件建立日期,只读属性     •    document.fileModifiedDate //文件修改日期,只读属性     •    document.fileSize //文件大小,只读属性     •    document.cookie //设置和读出cookie     •    document.charset //设置字符集 简体中文:gb2312     •    cookie 关于 cookie 请参看“使用框架和 Cookies”一章。     •    lastModified 当前文档的最后修改日期,是一个 Date 对象。     •    referrer 如果当前文档是通过点击连接打开的,则 referrer 返回原来的 URL。     •    title 指<head>标记里用<title>...</title>定义的文字。在 Netscape 里本属性不接受赋值。     •    fgColor 指<body>标记的 text 属性所表示的文本颜色。     •    bgColor 指<body>标记的 bgcolor 属性所表示的背景颜色。     •    linkColor 指<body>标记的 link 属性所表示的连接颜色。     •    alinkColor 指<body>标记的 alink 属性所表示的活动连接颜色。     •    vlinkColor 指<body>标记的 vlink 属性所表示的已访问连接颜色。

    内部数组对象

    在Javascript中为了方便内部对象的操作,可以使用窗体(Forms)、框架(Frames)、元素(element)、链接(links)和锚(Anchors)数组实现对象的访问。

    例:

    <A name="anchor1" href="test33.htm">链接到第三个文本</a> <A href="#anchor1">第一锚点</a>

    document.links.length==2,document.anchors.length==1。

    方法:     •    open() 打开文档以便 JavaScript 能向文档的当前位置(指插入 JavaScript 的位置)写入数据。通常不需要用这个方法,在需要的时候 JavaScript 自动调用。     •    write(); writeln() 向文档写入数据,所写入的会当成标准文档 HTML 来处理。writeln() 与 write() 的不同点在于,writeln() 在写入数据以后会加一个换行。这个换行只是在 HTML 中换行,具体情况能不能够是显示出来的文字换行,要看插入 JavaScript 的位置而定。如在<pre>标记中插入,这个换行也会体现在文档中。     •    clear() 清空当前文档。     •    close() 关闭文档,停止写入数据。如果用了 write[ln]() 或 clear() 方法,就一定要用 close() 方法来保证所做的更改能够显示出来。如果文档还没有完全读取,也就是说,JavaScript 是插在文档中的,那就不必使用该方法。 例如,典型的弹出式更新通知: <script language="JavaScript"> var whatsNew = open('','_blank','top=50,left=50,width=200,height=300,' +                 'menubar=no,toolbar=no,directories=no,location=no,' +                 'status=no,resizable=no,scrollbars=yes'); whatsNew.document.write('<center><b>更新通知</b></center>'); whatsNew.document.write('<p>最后更新日期:00.08.01'); whatsNew.document.write('<p>00.08.01:增加了“我的最爱”栏目。'); whatsNew.document.write('<p align="right">' +                 '<a href="javascript:self.close()">关闭窗口</a>'); whatsNew.document.close(); </script> 也可以先写好一个 HTML 文件,在 open() 方法中直接 load 这个文件。

    write()

    writeln();

    clear();可以用write("")和close()方法来实现clear的功能;

    createElement();

    createStyleSheet();

    <script>标签对中的document对象与事件函数中的document对象不是同一个对象。

    在document.close()后的操作,是新开启了一个document

    当write('</script>')时,它可能会被误认为是第一个script的结束标记,解决方法是改成write('</sc' +  'ript>');

    3. forms[]; Form 表单对象 document.forms[] 是一个数组,包含了文档中所有的表单(<form>)。要引用单个表单,可以用 document.forms[index],但是一般来说,人们都会这样做:在<form>标记中加上“name="..."”属性,那么直接用 “document.<表单名>”就可以引用了。 Form 对象的属性 name 返回表单的名称,也就是<form name="...">属性。 action 返回/设定表单的提交地址,也就是<form action="...">属性。 method 返回/设定表单的提交方法,也就是<form method="...">属性。 target 返回/设定表单提交后返回的窗口,也就是<form target="...">属性。 encoding 返回/设定表单提交内容的编码方式,也就是<form enctype="...">属性。 length 返回该表单所含元素的数目。 方法 reset() 重置表单。这与按下“重置”按钮是一样的。 submit() 提交表单。这与按下“提交”按钮是一样的。 事件 onreset; onsubmit

    4.anchors数组对象

       links数组对象

       images数组对象

       scripts数组对象

       applets数组对象

       all数组

       styleSheets数组对象

       body对象,

    4.window的对象属性

    location对象:

    window.location.href="" 等效于 widnow.navigate("") 的作用。

    widnow.location.replace("")

    widnow.location.reload

    event对象:

    altKey属性

    ctlKey属性

    shiftKey属性

    和事件源相关的坐标

    clientX,clientY属性

    screenX,screenY属性

    offsetX,offsetY属性

    x,y属性

    returnValue属性

    cancelBubble属性 ,为true时阻止某次事件向上传递。

    srcElement属性

    keyCode属性,码值

    frames数组对象

    访问帧窗口对象的方式:

    window.parent.frame[1]...

    window.parent.frame["framename1"]...

    window.parent["framename1"]...

    window.parent.framename1.....

    window.parent.item[1]...

    window.parent.item["framename1"]...

    top属性

     

    screen对象

    clipBoardData对象

    history对象

    navigator对象

    document对象

    body对象的事件:

    onSelectStart

    onScroll

     

     


    最新回复(0)