web开发人员是否必须掌握复杂的组件技术才能加快html页面的访问速度?答案是:不一定!实际上,有许多关于HTML与DHTML方面的技巧,它们原理简单而且上手容易。无论是技术高超的老手,还是初涉编程的菜鸟,领会这些都十分必要。

明显HTML,暗渡“公用脚本”

减少web页面下载时间的关键就是设法减小文件大小。当多个页面共用一些成分内容时,就可以考虑将这些公用部分单独分离出来。比如:我们可以将多个HTML页面都用到的脚本程序编写成独立存在的.js文件,然后再在页面中按如下方式调用它:

这样,公用文件只需要下载一次,然后就进入缓冲区。等下次再次调用包含公用文件的html页面时,下载时间明显减少。

让样式表内容进入地下工作

CSS是HTML装扮器,一个漂亮的Web页面不可能没有它。HTML页面中有多种引用CSS的方法,不同的方法导致的效率也不一样。通常,我们可以将定义于间的样式控制代码提取出来,保存到单独的.css文件中,然后在HTML页面中以标记或者@import标记的方式进行引用:

@import url("mysheet1.css");

请注意2点:1、.css文件中无需包括

宝贵内存节省两法

尽量减少HTML页面占用的内存空间是加快页面下载速度的一个有效方法。在这方面,有2个需要注意的问题:

1、使用同一种脚本语言

HTML页面离不开脚本程序的支持,我们经常会在页面中嵌入多种脚本语言,比如JavaScript与VBScript。但是,不知你发觉没有:这样的混合使用减慢了页面的访问速度。原因在于:要解释并运行多种脚本代码,就必须在内存中装载多种脚本引擎。所以,请尽量在页面中使用同一种脚本语言编写代码。

2、巧用IFrame

你使用过标记吗?它可是一个非常美妙的功能。如果要在一个HTML文档中包含第2个页面的内容,通常的方法是使用标记。但是有了,一切变得简单了。比如,开发一个文档预览页面,可以在左边放置一系列主题,在右边放置一个IFRAME,其中包含要预览的文档;当鼠标掠过左边的每一个主题链接时,就在右边建立一个新的IFRAME以预览文档。这样做,代码效率无疑是高效的,但同时导致了繁重的处理过程,最终是缓慢的速度。

没关系,我们有办法:只使用单一的IFRAME。当鼠标指向一个新主题时,只需要修改IFRAME元素的SRC属性即可。这样,任何时间内只会有一个预览文档保留在内存。

择优选用动画定位属性

每天上网浏览页面,你一定会看到许多动画效果。比如,一个可爱的小兔子在页面上来回地走动 ... 实现这个效果的核心技术就是CCS定位。通常,我们是使用element.style.left和element.style.top2个属性来达到图形定位的目的。但是,这样做会产生一些问题:left属性返回一个字符串,并且其中包含了度量单位(比如100px)。因此,要设定新的位置坐标,就必须首先对这个字符串返回值进行处理,然后才能赋值,象下面一样:

dim stringLeft, intLeft

stringLeft = element.style.left

intLeft = parseInt(stringLeft)

intLeft = intLeft + 10

element.style.left = intLeft;

你一定会感觉做这么点事情竟要编写这么复杂的代码,是否有更简洁的方法?当然有!请看这4个属性:posLeft、posTop、posWidth 和 posHeight,它们对应于相应字符串返回值的点数数值。好了,使用这些属性重新编写代码实现上面代码实现的功能:

element.style.posLeft += 10

代码短小、速度却更快!

循环控制多个动画说到制作动画效果,当然离不开定时器的运用。通常的方法就是使用window.setTimeout来不断地定位页面上的元素。但是,如果页面上有多个动画要显示,是不是就要设定多个定时器呢?答案是No!原因很简单:定时器功能将消耗掉大量宝贵的系统资源。可是我们仍能在页面上控制多个动画,技巧就是使用一个循环。在循环中根据不同的变量值控制相应动画的位置,整个循环中只使用一个window.setTimeout()函数调用。

Visibility快于Display

让图画时隐时现会创造很有趣的效果,有2种方法可以实现这个目的:使用CSS的visibility属性或者display属性。对于绝对位置元素,diaplay和visibility具有同样的效果。两者的区别在于:设置为display:none的元素将不再占用文档流的空间,而设置为visibility:hidden的元素仍然保留原位置。

但是如果要处理绝对位置的元素,使用visibility会更快。

从小处着手

编写DHTML网页的一个重要提示是:从小处着手。初次编写DHTML页面时,一定不要试图在页面中使用你了解到的全部DHTML功能。每次可以只使用一个单一的新特征,并且仔细地观察由此产生的变化。如果发现性能有所下降,就可以快速地找到为什么。

脚本的DEFER化

DEFER是脚本程序强大功能中的一个“无名英雄”。你可能从没有使用过它,但是看完这里的介绍后,相信你就离不开它。它告诉浏览器Script段包含了无需立即执行的代码,并且,与SRC属性联合使用,它还可以使这些脚本在后台被下载,前台的内容则正常显示给用户。

216CEB40102D1AA95946C5CCAEE6629A.gif

最后请注意两点:

1、不要在defer型的脚本程序段中调用document.write命令,因为document.write将产生直接输出效果。

2、而且,不要在defer型脚本程序段中包括任何立即执行脚本要使用的全局变量或者函数。

保持同一URL的大小写一致性

我们都知道UNIX服务器是大小写敏感的,但是你知道吗:Internet Explorer的缓冲区也是区别对待大小写字符串的。因此,作为web开发者,一定要记住保持相同链接的URL字符串在不同位置的大小写的一致性。否则,就会在浏览器的缓冲区中存放同一位置的不同文件备份,也增加了下载同一位置内容的请求次数。这些都无疑降低了web访问效率。所以请谨记:同一位置的URL,在不同页面中请保持URL字符串的大小写一致性。

让标记有始有终

自己编写或者查看他人的HTML代码时,我们一定都遇到过标记有头无尾的情况。比如:

有头无尾标记举例

第一个第二个第三个

很明显,上面的代码中缺少三个结束标记。但是这并不妨碍它的正确执行。在HTML中,这样的标记还有一些,例如FRAME、IMG和P。

可是请不要偷懒,请将结束标记写完整,这样做不仅使HTML代码格式规范,更可以加速页面的显示速度。因为Internet Explorer将不会花费时间判断和计算段落或者列表项目在哪里结束。

有头有尾标记举例

第一个第二个第三个

OK,以上列举了有关加速HTML页面的10个处理技巧,描述这些很简单,但是只有真正领会并掌握其中的本质,并且举一反三,才会编写出更快、更好的程序。

posted on 2007-04-04 11:45 PeakGao 阅读(254) 评论(2)  编辑 收藏 引用 所属分类: Javascript 、HTML

html计时加速,HTML-加速、再加速相关推荐

  1. 长沙,企业上市“再加速”

    6月中旬,长沙市召开了一次加速企业上市工作推进会,引发广泛关注.长沙市委主要领导.深圳证券交易所.中国证监会湖南监管局.湖南省地方金融监管局领导齐齐出席.众所周知,企业上市,是一个城市综合实力和市场活 ...

  2. PHP快还是HTML快,PHP_HTML-加速、再加速,web开发人员是否必须掌握复杂 - phpStudy...

    HTML-加速.再加速 web开发人员是否必须掌握复杂的组件技术才能加快html页面的访问速度?答案是:不一定!实际上,有许多关于HTML与DHTML方面的技巧,它们原理简单而且上手容易.无论是技术高 ...

  3. 【观察】中国跨境电商出海再加速背后,如何破解行业同质化竞争困局?

    2022年,疫情之下,跨境电商成了众多中国企业竞争的新战场.尽管面对疫情形势的反复和国际环境的复杂挑战,但在中国制造能力和综合国力的外溢下,我国跨境电商出口规模依然保持着高增速,并迎来了历史最好的时期 ...

  4. ios有什么ssr_飞猪营销域SSR总结 - 双十一会场再加速

    飞猪营销域SSR总结 - 双十一会场再加速 缘起 曾经在PC时代通过模板同步渲染实现页面秒出基本是标配,但由于移动端的网络和运行环境条件受到地域,设备的影响参差不齐,再加上手机相比于电脑的屏幕差距对页 ...

  5. apache 网站转nginx_堡塔网站加速宝塔面板网站加速安装设置使用教程

    堡塔网站加速是宝塔面板为用户开发的一款网站加速插件,基于页面缓存的网站加速插件,支持常见的众多建站程序加速.其原理是在http协议层缓存动态页面,对实时信息及已登录的会话跳出缓存,此技术主要针对匿名访 ...

  6. php 一键wifi,懒人全自动脚本,一键自动swap2c一键3d加速,一键wifi加速等等.doc

    懒人全自动脚本,一键自动swap2c一键3d加速,一键wifi加速等等 前言/注意事项 以下有部分补丁并不是能适合所有的ROM使用,请在下载/使用前看清楚我在帖子中的说明,如果因为用户自身问题造成手机 ...

  7. 防百度云加速html,国内免费CDN百度云加速服务体验 - 国内外加速、防护、提高搜索体验...

    百度云加速从早期与加速乐的合作,到目前独立开发和运营的3.0版本,基本上已经完成功能和结构以及全国大部分节点的布局.目前百度云加速有提供免费/付费国内CDN服务(需要BA)以及免费国外CDN服务(如果 ...

  8. go依赖包下载加速方法及github加速

    go依赖包下载加速方法及github加速 对于https://github.com/kubernetes/kubernetes整个仓库大小为近900M,下载起来那个伤心: 方法一:使用码云 这是码云上 ...

  9. Docker下载加速:Docker镜像下载加速、pip 下载加速、apt 下载加速

    一.参考资料 docker国内镜像源 二.重要说明 Docker 默认的下载源均在国外,没有VPN的情况下,下载速度都很慢,为此需要设置国内的下载镜像源: Docker 下载加速可从三个方面加速:Do ...

  10. cdn搭建原理_beijingshij:cdn加速原理图解cdn加速原理以及实现

    cdn加速原理图解cdn加速原理以及实现 伴随着互联网技术的发展趋势,用户在应用互联网时对网址的访问速率和实际效果更加高度重视,但因为用户数量猛增,互联网访问相对路径太长,进而使用户的访问品质遭受比较 ...

最新文章

  1. InitializeComponent()有什么作用?
  2. 说实话,你工作5年,不知道什么是Java agent技术,让我很吃惊...
  3. 这大概是一篇最简单最清晰的Java JVM执行流程
  4. LiveVideoStackCon 2019北京日程发布
  5. WildFly 10 CR 2发布– Java EE 7,Java 8,Hibernate 5,JavaScript支持热重载
  6. 1716. 计算力扣银行的钱
  7. 关于Apache Tomcat解决localhost was unable to start within 45 seconds
  8. 基于Linux命令行终端的ftp客户端程序
  9. 操作系统源代码_计算机自制操作系统(八):仿生DOS操作系统源代码
  10. Win7和win10下python3和python2同时安装并解决pip共存问题
  11. LINUX-VIM编辑器常用命令大全(超全)
  12. 什么是CIF/4CIF/QCIF/D1
  13. 无法使用资源管理器打开FTP,别被百度的结果坑了
  14. 利用Django创建简单app
  15. c#把word文档转换为html页面
  16. 如何解决 vue 初始化页面闪动问题
  17. linux安装bz2压缩文件,Linux下*.tar.gz/.tar.bz2 文件解压缩安装命令
  18. 根据checkBox的状态,控制按钮可否点击。不可点击置灰
  19. 盘点丨全球政府机构十大网络安全事件
  20. 社会最底层的人,如何突破人生圈层,改变命运?

热门文章

  1. 计算机辅助化学教育,在计算机辅助下的化学教学_计算机辅助制造
  2. 前沿讲座之计算机图形学
  3. KGB知识图谱完成金融行业的信息抽取工作
  4. mysql数据库首次查询缓慢
  5. linux串口无线透传,一种无线串口透传系统的制作方法
  6. ANSA二次开发实战——车身弯扭刚度计算文件自动生成(1)
  7. 大学教师与大学学生的彼此期望
  8. 使命召唤手游显示服务器停服,使命召唤手游停服了吗 是手游还是端游
  9. DownloadHelper使用教程
  10. zlib库介绍四:zlib算法(LZ77、LZ78、霍夫曼编码、滑动窗口、Rabin-Karp算法、哈希链、I/O缓冲区)