JavaScript技术讲座-使用内部对象系统

2024-04-15 11:32

本文主要是介绍JavaScript技术讲座-使用内部对象系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用浏览器的内部对象系统, 可实现与HTML文档进行交互。它的作用是将相关元素组织包装起来,提供给程序设计人员使用,从而减轻编程人的劳动,提高设计Web页面的能力。

一、浏览器对象层次及其主要作用

除了前面提到过的文档document对象外,Navigator浏览器中还提供了窗口(Window)对象以及历史(History)和位置(Location)对象。

 

 

浏览器对象(Navigator)

提供有关浏览器的信息

 

 

窗口对象(Windows)

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

 

 

位置对象(Location)

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

 

 

历史对象(History)

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

 

 

文档对象(Document)

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

 

 

编程人员利用这些对象,可以对WWW浏览器环境中的事件进行控制并作出处理。在JavaScript中提供了非常丰富的内部方法和属性,从而减轻了编程人员的工作,提高编程效率。这正是基于对象与面向对象的根本区别所在。在这些对象系统中,文档对象属于非常重要的,它位于最低层,但对于我们实现Web页面信息交互起作关键作用。因而它是对象系统的核心部分。

二、文档对象功能及其作用

在Navigator浏览器中,document文档对象是核心是,同时也是最重要的。见图6-1所示。

Links Anchor Form Method Prop
链接对象 锚对象 窗体对象 方法 对象

 

图6-1 document对象

 

从图6-1中可以看出,document对象的主要作用就是把这些基本的元素(如links,anchor等)包装起来,提供给编程人员使用。从另一个角度看,document对象中又是由属性和方法组成。

1、document中三个主要的对象

在document中主要有:links,anchor,form等三个最重要的对象:

(1)anchor锚对象:

anchor对象指的是<A Name=...> </A>标识在HTML源码中存在时产生的对象。它包含着文档中所有的anchors信息。

(2)链接links对象

link对象指的是用<A Href=...> </A>标记的连接一个超文本或超媒体的元素作为一个特定的URL。

(3)窗体(Form)对象

窗体对象是文档对象的一个元素,它含有多种格式的对象储存信息,使用它可以在JavaScript脚本中编写程序进行文字输入,并可以用来动态改变文档的行为。通过document. Forms[]数组来使得在同一个页面上可以有多个相同的窗体,使用forms[]数组要比使用窗体名字要方便得多。

例:下面就是一个使用窗体数组和窗体名字的例子。该程序使得两个窗体中的字段内容保持一致。

Test6_1.htm

<Html>

<head>

</head>

<body>

<form >

<input type=text onChange="document.my.elements[0].value=this.value;" >

</form>

<form NAME="my">

<input type=text onChange="document.forms[0].elements[0].value=this.value;">

</form>

</body>

</html>

其中用了OnChnge事件(当窗体内容改变时激发)。第一个使用窗体名字标识my,第二个使用窗体数组Forms[]。其效果是一致。

2、文档对象中的attribute属性

document对象中的attribute属性,主要用于在引用Href标识时,控制着有关颜色的格式和有关文档标题、文档原文件的URL以及文档最后更新的日期。这部分元素的主要含义如下:

(1)链接颜色:alinkcolor

这个元素主要用于,当选取一个链接时,链接对象本身的颜色就按alinkcolo r指定改变。

(2)链接颜色:linkcolor

当用户使用<A Href=...> Text string </A>链接后,Textstring的颜色就会按Linkcolor所指定的颜色更新。

(3)浏览过后的颜色:VlinkColor

该属性表示的是已被浏览存储为已浏览过的链接颜色。

(4)背景颜色:bgcolor

该元素包含文档背景的颜色。

(5)前景颜色:Fgcolor

该元素包含HTML文档中文本的前景颜色。

3、文档对象的基本元素

(1)窗体属性:

窗体属性是与HTML文档中<Form>...</Form>相对应的一组对象在HTML文档所创建的窗体数,由length指定。通过document.forms.length反映该文档中所创建的窗体数目。

(2)锚属性:anchors

该属性中,包含了HTML文档的所有<A> </A>标记为Name=...的语句标识。所有“锚”的数目保存在document.anchors.length中。

(3)链接属性:links

链接属性是指在文档中<A>...</A>的由Href=...指定的数目,其链接数目保存在document.links.length中。

三、范例

例1:下面我们通过一个例子来说明文档对象的综合应用。输出结果见图6-2所示。

Test6_2.htm

<html>

<head>

</HEAD>

<BOdy>

<Form Name="mytable">

请输入数据:

<Input Type="text" Name="text1" Value="">

</Form>

<A name="Link1" href="test31.htm">链接到第一个文本</a><br>

<A name="Link2" href="test32.htm">链接到第二个文本</a><br>

<A name="Link2" href="test33.htm">链接到第三个文本</a><br>

<A href="#Link1">第一锚点</a>

<A href="#Link2">第二锚点</a>

<A Href="#Link3">第三锚点</a>

<BR>

<Script Language="JavaScript">

document.write("文档有"+document.links.length+"个链接"+"<br>");

document.write("文档有"+document.anchors.length+"个锚点"+"<br>");

document.write("文档有"+document.forms.length+"个窗体");

</script>

</body>

</HTML>

 

 

 

 

 

 

 

图6-2

 

 

例子2:下列程序随机产生每日一语。

test6_3.html

<HTML>

<HEAD>

<script Language="JavaScript">

<!--

tips = new Array(6);

tips[0]="每日一语(1)";

tips[1]="每日一语(2)";

tips[2]="每日一语(3)";

tips[3]="每日一语(4)";

tips[4]="每日一语(5)";

tips[5]="每日一语(6)";

index = Math.floor(Math.random() * tips.length);

document.write("<FONT SIZE=8 COLOR=DARKBLUE>" + tips[index]+"</FONT>");

</Script>

</HEAD>

</BODY>

</HTML>

输出结果见图6-3所示。

 

 

 

图6-3

 

 

 

本讲主要介绍了JavaScript对象系统的使用方法,其中重点介绍了文档对象及使用。 

这篇关于JavaScript技术讲座-使用内部对象系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/905693

相关文章

Java利用Spire.XLS for Java设置Excel表格边框

《Java利用Spire.XLSforJava设置Excel表格边框》在日常的业务报表和数据处理中,Excel表格的美观性和可读性至关重要,本文将深入探讨如何利用Spire.XLSforJava库... 目录Spire.XLS for Java 简介与安装Maven 依赖配置手动安装 JAR 包核心API介

Java StringBuilder 实现原理全攻略

《JavaStringBuilder实现原理全攻略》StringBuilder是Java提供的可变字符序列类,位于java.lang包中,专门用于高效处理字符串的拼接和修改操作,本文给大家介绍Ja... 目录一、StringBuilder 基本概述核心特性二、StringBuilder 核心实现2.1 内部

SpringBoot AspectJ切面配合自定义注解实现权限校验的示例详解

《SpringBootAspectJ切面配合自定义注解实现权限校验的示例详解》本文章介绍了如何通过创建自定义的权限校验注解,配合AspectJ切面拦截注解实现权限校验,本文结合实例代码给大家介绍的非... 目录1. 创建权限校验注解2. 创建ASPectJ切面拦截注解校验权限3. 用法示例A. 参考文章本文

在Android中使用WebView在线查看PDF文件的方法示例

《在Android中使用WebView在线查看PDF文件的方法示例》在Android应用开发中,有时我们需要在客户端展示PDF文件,以便用户可以阅读或交互,:本文主要介绍在Android中使用We... 目录简介:1. WebView组件介绍2. 在androidManifest.XML中添加Interne

Java中字符编码问题的解决方法详解

《Java中字符编码问题的解决方法详解》在日常Java开发中,字符编码问题是一个非常常见却又特别容易踩坑的地方,这篇文章就带你一步一步看清楚字符编码的来龙去脉,并结合可运行的代码,看看如何在Java项... 目录前言背景:为什么会出现编码问题常见场景分析控制台输出乱码文件读写乱码数据库存取乱码解决方案统一使

Java Stream流与使用操作指南

《JavaStream流与使用操作指南》Stream不是数据结构,而是一种高级的数据处理工具,允许你以声明式的方式处理数据集合,类似于SQL语句操作数据库,本文给大家介绍JavaStream流与使用... 目录一、什么是stream流二、创建stream流1.单列集合创建stream流2.双列集合创建str

springboot集成easypoi导出word换行处理过程

《springboot集成easypoi导出word换行处理过程》SpringBoot集成Easypoi导出Word时,换行符n失效显示为空格,解决方法包括生成段落或替换模板中n为回车,同时需确... 目录项目场景问题描述解决方案第一种:生成段落的方式第二种:替换模板的情况,换行符替换成回车总结项目场景s

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

SpringBoot中@Value注入静态变量方式

《SpringBoot中@Value注入静态变量方式》SpringBoot中静态变量无法直接用@Value注入,需通过setter方法,@Value(${})从属性文件获取值,@Value(#{})用... 目录项目场景解决方案注解说明1、@Value("${}")使用示例2、@Value("#{}"php

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建