1 / 85

第 4 章 VBScript 的对象与动态网页编程

第 4 章 VBScript 的对象与动态网页编程. 4.1 VBScript 的对象编程 4.2 在 VBScript 中使用对象 4.3 表单控件 4.4 技能与实训 4.5 思考与练习. 4.1 VBScript 的对象编程. 4.1.1 对象的属性和方法 类和对象 “ 类 ” 是一类事物总体的描述,而对象可以看成是现实中的某个实体,所以, 一个对象都能够对应到一个类,而一个类可以被创建为多个对象。 一个对象最重要的应该是两个元素:属性和方法。属性是一个对象的某些特征,类是实体共性的抽象,而属性则可以理解成这些某个实体的特性。.

vida
Download Presentation

第 4 章 VBScript 的对象与动态网页编程

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第4章 VBScript的对象与动态网页编程 • 4.1 VBScript的对象编程 • 4.2 在VBScript中使用对象 • 4.3 表单控件 • 4.4 技能与实训 • 4.5 思考与练习

  2. 4.1 VBScript的对象编程 4.1.1对象的属性和方法 类和对象 “类”是一类事物总体的描述,而对象可以看成是现实中的某个实体,所以, 一个对象都能够对应到一个类,而一个类可以被创建为多个对象。 一个对象最重要的应该是两个元素:属性和方法。属性是一个对象的某些特征,类是实体共性的抽象,而属性则可以理解成这些某个实体的特性。

  3. 4.1 VBScript的对象编程 • 4.1.2 事件驱动程序设计 • 事件驱动 • 所谓的“事件驱动”指的就是通过事件的发生来推动程序的执行,这个事件,可以是由用户产生的,比如单击鼠标、键盘输入等,也可以是由系统产生的,比如时间到了某个时刻、系统产生了某些错误等。

  4. 1. 与网页有关的事件:onload :当一个网页被加载的时候触发onunload :当一个网页被卸载的时候触发 例如:<script language=”vbscript”> sub window_onload() msgbox”网页加载完成时显示!”end sub</script> • 4.1 VBScript的对象编程

  5. 这个过程不需要调用就能够执行,因为当网页加载完成后网页对象(Window)会触发一个onload事件,则事件过程中的语句会自动执行。2. 与鼠标有关的事件:onclick: :鼠标单击时触发ondblclick :鼠标双击时触发mousedown :鼠标按下时触发mouseup :鼠标弹起时触发mousemove :鼠标移动时触发 • 4.1 VBScript的对象编程

  6. 上面鼠标事件的过程描述如下:sub 对象_事件(鼠标键,功能键,X,Y) end sub其中,鼠标键参数用于区分鼠标的哪个键被按下,取值如下表4.1所示。 • 4.1 VBScript的对象编程

  7. 4.1 VBScript的对象编程

  8. 功能键参数用于区分shift 、ctrl 、alt三个功能键被按下的情况,取值如下表4.2所示。X,Y属性:表示鼠标当前的位置。表4.2 功能键取值参数 • 4.1 VBScript的对象编程

  9. 表4.2 • 4.1 VBScript的对象编程

  10. 3. 与键盘有关的事件:keypress :按一个键盘键时触发keydown :按下一个键盘键时触发keyup :弹起一个键盘键时触发 这些时间也是有参数的:sub 对象_事件(keycode,功能键) end sub其中的keycode表示被按键盘键所代表字符的ASCII的值(注:因为这个参数只是为了区分键,所以不管是大小写取大写字母的ASCII值)。功能键参数的取值,参考表4. 2。 • 4.1 VBScript的对象编程

  11. IE的脚本对象模型是一种层次结构,结构如图4.1所示。IE的脚本对象模型是一种层次结构,结构如图4.1所示。 • 4.2 在VBScript中使用对象

  12. 4.2 在VBScript中使用对象 从这个模型中,我们可以看出,最上面的是“window”对象,也称为窗体对象。它包含其它的六个对象,分别为框架对象(Frame)、历史对象(History)、浏览对象(Navigator)、位置对象(Location)、脚本对象(Script)、文档对象(Document);其中文档对象又包含三个子对象:链接对象(Link)、锚点对象(Anchor)和表单对象(Form)。最低一层的是元素对象(Element),它被包含在表单对象中。 在这个脚本对象模型中,Window对象是整个脚本对象的根,其它的对象都从属于这个根对象,是Window对象的属性,同时也是一个对象。

  13. 4.2.1 Window对象 Window对象位于脚本对象模型的最顶层,它能够带表IE的窗口。当一个网页被打开,就会产生一个Window对象。可以使用 Window 对象获取关于窗口状态的信息。还可以使用此对象获得对窗口文档、窗口中发生的事件和影响窗口的浏览器的访问。 当我们要访问当前窗口的Window对象时,可以直接使用Window关键字,因为此关键字总是代表当前的窗口。 接下来,我们按照面向对象的程序设计思想,分别来讨论Window对象的属性、方法和事件。 4.2 在VBScript中使用对象

  14. 4.2 在VBScript中使用对象

  15. 4.2 在VBScript中使用对象 (7)dialogWidth:设置或获取模式对话框的宽度。 (8)frameElement:获取在父文档中生成 Window 的 frame 或 iframe 对象。 (9)length:设置或获取集合中对象的数目。 (10)name:设置或获取表明窗口名称的值。 (11)offscreenBuffering:设置或获取对象在对用户可见之前是否要先在屏幕外绘制。 (12)opener:设置或获取创建当前窗口的窗口的引用。

  16. 4.2 在VBScript中使用对象 (13)parent:获取对象层次中的父窗口。 (14)returnValue:设置或获取从模式对话框返回的值。 (15)screenLeft:获取浏览器客户区左上角相对于屏幕左上角的 x 坐标。 (16)screenTop:获取浏览器客户区左上角相对于屏幕左上角的 y 坐标。 (17)self:获取对当前窗口或框架的引用。 (18)status:设置或获取位于窗口底部状态栏的信息。 (19)top:获取最顶层的祖先窗口。

  17. 4.2 在VBScript中使用对象 4.2.1.2 Window对象的方法 Window对象的方法如下: (1)Alert:显示包含由应用程序自定义消息的对话框。 (2)attachEvent:将指定函数绑定到事件,以便每当该事件在对象上触发时都调用该函数。 (3)Blur:使元素失去焦点并触发 onblur 事件。 (4)clearInterval:使用 setInterval 方法取消先前开始的间隔事件。 (5)clearTimeout:取消先前用 setTimeout 方法设置的超时事件。

  18. 4.2 在VBScript中使用对象 (6)Close:关闭当前浏览器窗口或 HTML 应用程序(HTA)。 (7)Confirm:显示一个确认对话框,其中包含一个可选的消息和确定取消按钮。 (8)createPopup:创建弹出窗口。 (9)detachEvent:从事件中取消指定函数的绑定,这样当事件触发时函数就不会收到通知了。 (10)execScript:以给定语言执行指定的脚本。 (11)Focus:使得元素得到焦点并执行由 onfocus 事件指定的代码。 (12)moveBy:将窗口的位置移动指定 x 和 y 偏移值。

  19. 4.2 在VBScript中使用对象 (13)moveTo:将窗口左上角的屏幕位置移动到指定的 x 和 y 位置。 (14)Navigate:在当前窗口中装入指定 URL。 (15)Open:打开新窗口并装入给定 URL 的文档。 (16)Print:打印与窗口关联的文档。 (17)Prompt:显示一个提示对话框,其中带有一条消息和一个输入框。 (18)resizeBy:更改窗口的当前位置缩放指定的 x 和 y 偏移量。 (19)resizeTo:将窗口的大小更改为指定的宽度和高度值。

  20. 4.2 在VBScript中使用对象 (20)Scroll:将窗口滚动到自左上角起指定的 x 和 y 偏移量。 (21)scrollBy:将窗口滚动 x 和 y 偏移量。 (22)scrollTo:将窗口滚动到指定的 x 和 y 偏移量。 (23)setActive:设置对象为当前对象而不将对象置为焦点。 (24)setInterval:每经过指定毫秒值后计算一个表达式。 (25)setTimeout:经过指定毫秒值后计算一个表达式。

  21. 4.2 在VBScript中使用对象 4.2.1.3 Window对象的事件 Window对象的事件如下: (1)Onactivate:当对象设置为活动元素时触发。 (2)Onafterprint:对象所关联的文档打印或打印预览后立即在对象上触发。 (3)Onbeforedeactivate:在 activeElement 从当前对象变为父文档其它对象之前立即触发。 (4)Onbeforeprint:对象的关联文档打印或打印预览前在对象上触发。 (5)Onbeforeunload:在页面将要被卸载前触发。

  22. 4.2 在VBScript中使用对象 (6)Onblur:在对象失去输入焦点时触发。 (7)Oncontrolselect:当用户将要对该对象制作一个控件选中区时触发。 (8)Ondeactivate:当 activeElement 从当前对象变为父文档其它对象时触发。 (9)Onerror:当对象装载过程中发生错误时触发。 (10)Onfocus:当对象获得焦点时触发。 (11)Onhelp:当用户在浏览器为当前窗口时按 F1 键时触发。 (12)Onload:在浏览器完成对象的装载后立即触发。

  23. 4.2 在VBScript中使用对象 (13)Onmove:当对象移动时触发。 (14)Onmoveen:当对象停止移动时触发。 (15)Onmovestart:当对象开始移动时触发。 (16)Onresize:当对象的大小将要改变时触发。 (17)Onresizeend:当用户更改完控件选中区中对象的尺寸时触发。 (18)Onresizestart:当用户开始更改控件选中区中对象的尺寸时触发。

  24. 4.2 在VBScript中使用对象 例4-1:Window对象综合示例。 第一步,创建页面文件4.2-2.htm(通过超链接为目的页面命名(“name“属性赋值))。 <html> <head> </head> <body> <a href=”4.2.htm” target=”parent访问父窗口”>给子窗口命名</a> </body></html>

  25. 4.2 在VBScript中使用对象 第二步,创建页面文件4.2-3.htm(把窗口名称放到窗口的状态栏上!)。 <html> <head> <script language=”vbscript”> dim my_na my_na=window.name window.status=my_na window.alert “本窗口的名字为:”&my_na </script></head><body><a href=”4.3.htm” targe=”_self”> 点击</a></body></html>

  26. 4.2 在VBScript中使用对象 第三步,创建页面文件4.2-4.htm。 <html> <head> <script language=”vbscript”> dim fa_na fa_na=window.parent.name /获得父窗口的名称 window.status=fa_na /把父窗口的名称放到本窗口的状态栏上 window.alert “本窗口的父窗口名字为:”&fa_na /用alert方法输出父窗口名称

  27. 4.2 在VBScript中使用对象 sub window_Onresize /当改变窗口大小的时候,显示信息,并关闭窗口 window.alert “窗口大小改变了” window.close end sub </script> </head> <body> </body> </html>

  28. 4.2 在VBScript中使用对象

  29. 4.2 在VBScript中使用对象 图4.3 父窗给子窗体命名(4.2.htm 效果图) 图4.4 4.3.htm 获得父窗体名称并显示

  30. 4.2 在VBScript中使用对象 4.2.2 document对象 4.2.2.1 document对象的属性 document对象的属性如下: (1)activeElement:获取当父 document 拥有焦点时获得焦点的对象。 (2)alinkColor:设置或获取元素中所有激活链接的颜色。 (3)bgColor:不赞成。设置或获取表明对象后面的背景颜色的值。 (4)Charset:设置或获取用于解码对象的字符集。 (5)Cookie:设置或获取 cookie 的字符串值。

  31. 4.2 在VBScript中使用对象 (6)defaultCharset:从当前的区域语言中获取默认字符集。 (7)designMode:设置或获取表明文档是否可被编辑的值。 (8)Dir:设置或获取表明对象的阅读顺序的值。 (9)Doctype:获取与当前文档关联的文档类型声明。 (10)documentElement:获取对文档根结点的引用。 (11)Domain:设置或获取文档的安全域名。 (12)Expando:设置或获取表明是否可对象内创建任意变量的值。

  32. 4.2 在VBScript中使用对象 (13)fgColor:设置或获取文档的前景(文本)颜色。 (14)fileCreatedDate:获取文件创建的日期。 (15)fileModifiedDate:获取文件上次修改的日期。 (16)fileSize:获取文件大小。 (17)Implementation:获取当前文档的 implementation 对象。 (18)lastModified:获取页面上次修改的日期,若页面提供的话。 (19)linkColor:设置或获取对象文档链接的颜色。

  33. 4.2 在VBScript中使用对象 (20)parentWindow:获取容器对象所在窗口的引用。 (21)Protocol:设置或获取 URL 的协议部分。 (22)readyState:获取表明对象当前状态的值。 (23)Referrer:获取将用户引入当前页面的位置 URL。 (24)uniqueID:获取为对象自动生成的唯一标识符。 (25)URL:设置或获取当前文档的 URL。 (26)URLUnencoded:获取文档的 URL,去除所有字符编码。

  34. 4.2 在VBScript中使用对象 (27)vlinkColor:设置或获取用户已访问过的链接颜色。 (28)XMLDocument:获取对由对象引出的的 XML 文档对象模型(DOM)的引用。 (29)XSLDocument:获取对 XSL 文档的顶层结点的引用。

  35. 4.2 在VBScript中使用对象 4.2.2.2 document对象的方法 document对象的方法如下: (1)attachEvent:将指定函数绑定到事件,以便每当该事件在对象上触发时都调用该函数。 (2)Close:关闭输出流并强制将数据发送到显示。 (3)createAttribute:以指定名称创建 attribute 对象。 (4)createComment:以指定数据创建 comment 对象。 (5)createDocumentFragment:创建一个新文档。

  36. 4.2 在VBScript中使用对象 (5)createDocumentFragment:创建一个新文档。 (6)createElement:为指定标签创建一个元素的实例。 (7)createEventObject:生成当使用 fireEvent 方法时用于传递事件相关信息的 event 对象。 (8)createStyleSheet:为文档创建样式表。 (9)createTextNode:从指定值中创建文本字符串。 (10)detachEvent:从事件中取消指定函数的绑定,这样当事件触发时函数就不会收到通知了。

  37. 4.2 在VBScript中使用对象 (11)elementFromPoint:返回指定 x 和 y 坐标的元素。 (12)execCommand:在当前文档、当前选中区或给定范围上执行命令。 (13)Focus:使得元素得到焦点并执行由 onfocus 事件指定的代码。 (14)getElementById:获取对 ID 标签属性为指定值的第一个对象的引用。 (15)getElementsByName:根据 NAME 标签属性的值获取对象的集合。 (16)getElementsByTagName:获取基于指定元素名称的对象集合。

  38. 4.2 在VBScript中使用对象 (18)mergeAttributes:复制所有读/写标签属性到指定元素。 (19)Open:此方法以两种方式工作。该方法打开一个文档用于收集 write 和 writeln 方法的输出。在这种情况下,只使用前两个参数 url 和 name。若指定了附加参数,此方法将打开一个窗口,这与 Window 对象的 window.open 方法相同。 (20)Recalc:重新计算当前文档中的全部动态属性。 (21)releaseCapture:释放当前文档中对象的鼠标捕捉。

  39. 4.2 在VBScript中使用对象 (22)setActive:设置对象为当前对象而不将对象置为焦点。 (23)Write:在指定窗口的文档中写入一个或多个 HTML 表达式。 (24)Writeln:在指定窗口的文档中写入一个或多个 HTML 表达式,后面追加一个换行符

  40. 4.2 在VBScript中使用对象 4.2.2.3 document对象的事件 document对象的事件如下: (1)onbeforeactivate:对象要被设置为当前元素前立即触发。 (2)Onfocusin:当元素将要被设置为焦点之前触发。 (3)Onfocusout:在移动焦点到其它元素之后立即触发于当前拥有焦点的元素上触发。 (4)Onmousewheel:当鼠标滚轮按钮旋转时触发。

  41. 4.2 在VBScript中使用对象 例4-2:创建文件4.2-5.htm <html> <head> <script language=”vbscript”> document.bgcolor=”red” /通过document对象设置网页背景色 sub document_Onmousewheel() /转动滚轮时触发事件 document.write “你转动了滚轮!” /通过document对象输出内容到网页end sub</script></head><body></body> </html>

  42. 4.2 在VBScript中使用对象 图4.5 通过document对象设置网页背景色

  43. 4.2 在VBScript中使用对象 图4.6 通过document对象输出内容到网页

  44. 4.2 在VBScript中使用对象 4.2.3 Frame对象 可以通过 frame 对象访问所在页面的frame的属性 4.2.4 Location对象 location对象包含了当前URL的信息,并可以对URL进行设置。 4.2.4.1 location对象的属性

  45. 4.2 在VBScript中使用对象 location对象的属性如下: hash:设置或获取 href 属性中在井号“#”后面的分段。 Host:设置或获取 location 或 URL 的 hostname 和 port 号码。 Hostname:设置或获取 location 或 URL 的主机名称部分。 Href:设置或获取整个 URL 为字符串。 Pathname:设置或获取对象指定的文件名或路径。 Port:设置或获取与 URL 关联的端口号码。 Protocol:设置或获取 URL 的协议部分。 Search:设置或获取 href 属性中跟在问号后面的部分。

  46. 4.2 在VBScript中使用对象 4.2.4.2 location对象的方法 location对象的方法如下: assign:装入新的 HTML 文档。 reload:重新装入当前页面。 replace:装入指定 URL 的另外文档来替换当前文档。 例4-3:location的属性(文件4.2-7.htm) <html> <head> <title>location</title></head><body> <script language="vbscript">

  47. 4.2 在VBScript中使用对象 document.write ("锚标识:"& location.hash &"!<br>") document.write ("主机:"&location.host &"!<br>") document.write ("主机名:"&location.hostname &"!<br>") document.write ("超链目标名:"&location.href &"!<br>") document.write ("文件路径名:"&location.pathname &"!<br>") document.write ("端口:"&location.port &"!<br>") document.write ("存取方式:"&location.protocol&"!<br>") document.write ("搜索字符串:"&location.search) &"!" </script></body></html>

  48. 4.2 在VBScript中使用对象 图4.7 location对象

  49. 4.2 在VBScript中使用对象 4.2.5 History对象 History对象代表用户访问的历史URL信息,History对象有4个属性和3个方法,没有事件。 History对象的属性如下: current窗口中当前所显示文档的URL。 lengh它表示历史表的长度。 next表示历史表中的下一个URL。 PROVIOUS表示历史表中的上一个URL。

  50. 4.2 在VBScript中使用对象 History对象的方法可以调用历史表中包含的文档。 back()方法装入历史表中的前一个页面,等效于浏览器中的Back按钮。 forward()方法装入历史表中的后一个页面,等效于浏览器中的Forward按钮。 go()方法进入历史表中的特定文档,可以取整形参数或字符串参数。

More Related