时间:2021-05-02
编写ASP程序时,无疑我们要考虑一个重要问题:如何提高ASP程序的现实速度,因为过慢的ASP程序不仅无法吸引过多的浏览者,还会造成搜索引擎收录的页面过少,那么如何提高ASP程序的运行速度呢?本文主要从页面的代码习惯上进行了讲解。
(1)少用过多的嵌套表格
浏览器在执行时,总是找到表格的结尾标签</table>后才会把内容写到浏览器中,如果表格嵌套的过多,或表格内容过长时,会造成ASP程序显示过慢。下面用一个例子来说明:
如果要建立一个这样的页面:这个页面有一个顶部导航栏一个左边导航栏,一个右边的内容区。可以用一个两行两列的大表格来建立它。第一行中,合并两个列,然后插入一个顶部导航栏。第二行左边的列中,插入一个表格来显示导航按钮。右边的栏中,放置一个表格来实际内容。这样嵌套的表格生成的代码是这样的:
<TABLE BORDER="0"> <TR> <TD COLSPAN="2"><!-- 顶部导航栏--></TD> </TR> <TR> <TD ALIGN="LEFT" VALIGN="TOP"><!--左侧内容导航栏--></TD> <TD ALIGN="LEFT" VALIGN="TOP"><!--页面主要内容 --></TD> </TR> </TABLE>浏览器找到<TABLE>标签的时候并不是立刻把页面显示到屏幕上,除非它找到相应的结束标签</TABLE>。所以,如果你的整个页面在一个表格里的话,在收到最后一个</TABLE>之前,什么也不会显示出来,这样,这个页面将在整个文件全部下载以后才能被用户所看到。在页面数据量比较大的时候(比如搜索引擎的搜索结果),这个特性会导致暂时的停顿。为了防止出现这种情况,可以在制作的时候把页面分成许多小的表格。在每一个<TABLE>到相应的</TABLE>这一部分HTML代码下载完的时候,浏览器就会把它显示出来。在访问者看来页面是渐渐的,一部分一部分,越来越多的出现在屏幕上的。感觉上,这样的页面显示速度比下载完整个文件再一次显示出来更快。
按照这个原则来研究前面的例子,应该把页面中整个的大表分成三个单独的表。用第一个表显示顶部的导航栏,调节它的宽度,使它足够容纳所有的内容,在一个<TABLE></TABLE>代码段中完成它。页面下半部分,左边第二个表排成一列。使用第三个表容纳实际内容。(见图二)因为每一个部分都是一个完整的表格,所以,每一部分代码下载后都会立刻被显示出来。这样,顶部和左边的导航栏将比页面的其它部分更显显示出来。用户会在这个时候想象页面开始下载,很快就能显示在屏幕上。这样比起让用户在较长时间内一直面对一个空白屏幕要好得多。
修改过的代码是这样的:
<TABLE BORDER="0" WIDTH="100%"> <TR> <TD ALIGN="CENTER" VALIGN="TOP"><!-- 顶部导航栏--></TD> </TR> </TABLE> <TABLE BORDER="0" ALIGN="LEFT"> <TR> <TD ALIGN="LEFT" VALIGN="TOP"><!-- 左侧内容导航栏--></TD> </TR> </TABLE> <TABLE BORDER="0"> <TR> <TD ALIGN="LEFT" VALIGN="TOP"><!-- 内容页--></TD> </TR> </TABLE>(2)也要记住关闭其他的标记
在上面的例子中,我们仅仅早一些关闭<TABLE>标记,就能让页面在浏览器显示的更快些。以此类推,还有一些类似的标记也有同样的特性。
比如产生列表框和组合框<OPTION>标记和产生列表项的<LI>标记。通常,ASP程序员存取数据库,并把数据送入通过<OPTION>建立的列表框或组合框中,这时候在代码中写上一个关闭<OPTION>标记,这样简单的改变也能使页面在浏览器中显示的更快。
不要使用这样的代码:
Do while not objRS.EOF strOptionList = strOptionList & "<OPTION VALUE=""" & objRS("ID") &_""">"& _objRS("ProductName") objRS.MoveNext Loop Response.Write "<SELECT SIZE=""1"">" & strOptionList & "</SELECT>"要使用这样的代码:
Do while not objRS.EOF strOptionList = strOptionList & "<OPTION VALUE=""" & objRS("ID") & _ """>" & objRS("ProductName") & "</OPTION>" objRS.MoveNext Loop Response.Write "<SELECT SIZE=""1"">" & strOptionList & "</SELECT>"不要使用这样的代码:
<UL> <LI>Apples <LI>Oranges <LI>Bananas </UL>请不要轻视这些改变对提高ASP程序性能的重要性。也许,在你能找到的“技巧与提示”一类的书或在线资料中,很少提到过通过优化HTML代码来使你的程序运行的更快。但是,在实际中应用这些技术,确实能使程序性能得到很大的提高。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
我很想自己写一个这样的程序,不过wordpress是php的,我blog是ASP的,只好用ASP写代码了。经过一番折腾测试,终于让我的梦想变为现实。程序的流程是
如何把ASP编写成DLL选择自AppleBBS的Blog关键字如何把ASP编写成DLL出处这篇文章主要是把ASP代码变成组件,开发者不仅是加快了ASP的速度,而
动手写个小组件(组件入门) 这篇文章主要是为想将自己的ASP水平提高的人写的!把ASP代码变成组件,开发者不仅是加快了ASP的速度,而且也能保护自己的代码.这
商洛网站建设之网站改版怎样保持排名?很多人会遇到网站改程序的情况。比如现在用的ASP网站程序。如果想换成其他ASP程序或者PHP程序,如何才能稳定整个网站的
如何提高页面打开速度,这个是每个技术人员都要去想的问题。最近征帆网络负责一个信息网的网站改版,新版网页比旧版提升75%打开速度,为提升打开速度,在程序和页面重构