1.5互补的其他技术
在浏览器脚本编程中,开发人员还需要一些与javascript互补的技术。
1.5.1HTML(超文本标记语言)
Web页面是由声明性的文档标记语言所组成的,标记语言可以广泛的与javascript进行交互。脚本可以为页面添加新的内容、修改已有的页面内容,从而是页面变成“动态的”。可以与HTML进行交互,将组成页面的HTML视为一串字符,并访问其中用于组成页面的单词和符号,或者使用DOM(Document Object Model)以一种层次化的、基于对象的方式操作页面文档。在HTML中,使用如下语法可以通知浏览器执行内嵌在页面中的脚本代码。
<script type="text/javascript"> ..... </script>
还可以使用javascript生成HTML:
<script type="text/javascript"> document.write("<h1>hello world!</h1>"); </script>
1.5.2CSS(层叠样式表)
CSS用于描述Web页面中绝大多数元素的颜色、大小、位置和形状。CSS文档可以以静态方式描述一个Web文档的样式,也可以通过对象模型实现动态的修改CSS属性。在下述示例中,通过修改表示document对象背景色的CSS属性,修改了页面文档的背景颜色:
<script type="text/javascript"> document.body.style.backgroundColor="green"; </script>
1.5.3BOM(浏览器对象模型)
浏览器中的javascript本质上就是一组与浏览器特定功能区域相关的对象模型。其中之一是称为BOM的浏览器对象模型,BOM代表了浏览器自身。可以通过引用顶层的window对象来访问这些浏览器对象。通过顶层的window对象可以访问document对象、frames集合、浏览器的历史记录以及状态栏等对象。在很大程度上,浏览器对象模型所提供的对象依赖于用户当前使用的浏览器。浏览器对象模型的主要组成部分如下所示:
window对象
document对象 frames集合 history对象 location对象 navigator对象
浏览器对象模型包含了下列子组件:
- document对象:代表当前页面的document对象;
- frames集合:提供了当前页面内所包含框架的数组;
- history对象:包含了浏览器所访问网址的历史记录;
- location对象:包含了浏览器当前正在显示页面的URL;
- navigator对象:包含了浏览器自身的信息,例如当前浏览器的版本号和浏览器的引擎。
1.5.4DOM(文档对象模型)
浏览器对象模型中最重要的模型就是document模型。通过document对象,可以将页面中的所有元素作为一个具有层次结构的节点集合来访问。在javascript应用程序的任何部分,都可以通过window.document、或者简单地通过document来访问document对象。下面列出了DOM中最常见的顶层属性:
- body:返回当前页面的<body>容器的引用,其中包含了页面中的所有HTML元素;
- cookie:提供了为当前页面读取和写入cookie的功能;
- forms[]:包含了页面上所有表单元素的数组,其中包含了表单中所包含的所有元素;
- links[]:包含页面上所有超链接的数组;
- location:获取或者设置window对象的location属性,或者当前窗口的URL;
- title:页面文档的标题属性;
document代表了当前页,它是动态的(即可以通过javascript调用进行修改),对于不同的浏览器引擎document对象包含的内容并不完全相同。
浙公网安备 33010602011771号