【IT168 技术文档】
存储
活动客户界面技术需要存储。该存储位于主版页面磁头要素的JavaScript中。数据存在JavaScript变量,JavaScript数组或者JavaScript对象功能中。这些要素组成存储。页面可以更改但是不同页面的数据会保存在磁头要素的脚本中。
其他保存数据的方法
JavaScript 2D 数组
如果你的数据,包括你事先需要的信息在表单内,你可以将其保存在JavaScript 2D数组内。在创建2D数组的时候使用 for-loop。接下来的代码创建了一个2D,6×4数组。
for (i=0; i < 6; i++)
{a[i] = new Array(4)}
空值的HTML表格
如果你的数据,包含预先需要的信息在表单中。你可以将它保存在HTML表格中,而该表格的值被设定为“空”。主板页面中主要的HTML要素是DIV要素。DIV要素有用于网页和Ajax脚本HTML要素以下载预先的文本。当表格或任何HTML要素的值为“空”时,表格不会占用网页空间。
我们可以选择有一个或者多个HTML表格的DIV要素,把所有表格的显示值都设定会“空”。你把数据保存在表格的小单元内。在层叠样式表的正常数据流里,在主版页面的DIV之前创建这些表格是很好的。要想创建这样一个表格,你需要做的仅仅是按照如下方法写代码:
“T1”是表格标签。你可以使用DOM功能增添表格行和单元数以及单元内容。你需要的DOM功能如下:
表格对象集
cells[]返回一个数组,该数组包含一个单元
rows[]返回一个数组,该数组包含一行
表格对象功能
id设置或返回表格ID
innerHTML功能
现在你在客户端的内容,或许能够改变HTML要素的内容对你来说是有吸引力的。你可能已经知道你需要用innerHTML功能来改变表格单元内容。现在许多浏览器允许你改变几乎所有HTML要素的内容。想想下面的代码:
< head>
< script type="text/javascript">
function changeContent()
{
document.getElementById('S1').innerHTML = "two";
documen.getElementById('D1').innerHTML = "second";
}
< /script>
< /head>
< body>
< span id="S1">one< /span>
< div id="D1">First< /div>
< button type="button" onclick="changeContent()">Click< /button>
< /body>
< /html>
当你点击按钮,SPAN和DIV要素的内容可以通过脚本中的函数来改变。这个是告诉你由于你的页面或表单可能会在客户端生成,你或许需要改变HTML要素的内容。这一功能并不是ACP必要的。它只作为互补出现。你可以尝试上面的代码。
图像
Ajax被用来获得预先图像的字符串或者一个用户不知道其进程的XML文件。所以,在ACP中,Ajax不能帮助我们获得原来的图像。但是,我发现HTML对象要素可以下载预先图像。先看看接下来的介绍。
HTML对象要素
大多数用户代理都有嵌入机制来翻译普通数据种类比如,文本,GIF图像,颜色,字体以及一大堆的图表要素。为了翻译他们本来不支持的数据,用户代理一般会运行外部应用程序。对象要素允许制作者选择是由外部应用程序还是某些项目来翻译数据。
对象要素由一个被称之为存档属性的性能。这就是说明书对这一性能进行的描述:“该属性可以用来指定通用资源标识的空间分离清单,这些清单有包含了与对象相关资源的档案,而这些资源可能包含被指定为‘classid’和 ‘data’属性。预载的存档会减少对象的下载时间。”
真正令我们感兴趣的是最后一句话,“预载存档会减少对象的下载时间。”
HTML对象要素,图像和ACP
我们可以让存档属性的网址成为客户端的图像。我们可以把HTML对象当作是网页的一个要素。这些图像作为说明指引被预先下载。我们就可以显示我们想要的图像了。
总结
在我们结束前,让我们看看Ajax方法的总结,这里头包括了我做的一些改进。同样,还将介绍其他两种方法。
Ajax方法不使用框式支架。以下便是Ajax方法的总结:
● 主版页面具备可以显示页面的DIV要素;
● 用户工作的时候,任何种类的数据,包括程序脚本代码,都从服务器处预先下载;
● 建议把Ajax脚本放在页面的底部。每个页面可以预先下载Ajax脚本;
● 下载后的代码被保存在JavaScript变量,JavaScript对象功能以及主版页面的HEAD要素脚本的JavaScript数组之中。从页面下载的字符串应该只有HTML要素适合DIV要素;
由脚本生成的页面,在主版页面的HEAD要素中或者在页面下载内容的BODY要素的脚本之中。