html计时加速,HTML-加速、再加速
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属性联合使用,它还可以使这些脚本在后台被下载,前台的内容则正常显示给用户。
最后请注意两点:
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-加速、再加速相关推荐
- 长沙,企业上市“再加速”
6月中旬,长沙市召开了一次加速企业上市工作推进会,引发广泛关注.长沙市委主要领导.深圳证券交易所.中国证监会湖南监管局.湖南省地方金融监管局领导齐齐出席.众所周知,企业上市,是一个城市综合实力和市场活 ...
- PHP快还是HTML快,PHP_HTML-加速、再加速,web开发人员是否必须掌握复杂 - phpStudy...
HTML-加速.再加速 web开发人员是否必须掌握复杂的组件技术才能加快html页面的访问速度?答案是:不一定!实际上,有许多关于HTML与DHTML方面的技巧,它们原理简单而且上手容易.无论是技术高 ...
- 【观察】中国跨境电商出海再加速背后,如何破解行业同质化竞争困局?
2022年,疫情之下,跨境电商成了众多中国企业竞争的新战场.尽管面对疫情形势的反复和国际环境的复杂挑战,但在中国制造能力和综合国力的外溢下,我国跨境电商出口规模依然保持着高增速,并迎来了历史最好的时期 ...
- ios有什么ssr_飞猪营销域SSR总结 - 双十一会场再加速
飞猪营销域SSR总结 - 双十一会场再加速 缘起 曾经在PC时代通过模板同步渲染实现页面秒出基本是标配,但由于移动端的网络和运行环境条件受到地域,设备的影响参差不齐,再加上手机相比于电脑的屏幕差距对页 ...
- apache 网站转nginx_堡塔网站加速宝塔面板网站加速安装设置使用教程
堡塔网站加速是宝塔面板为用户开发的一款网站加速插件,基于页面缓存的网站加速插件,支持常见的众多建站程序加速.其原理是在http协议层缓存动态页面,对实时信息及已登录的会话跳出缓存,此技术主要针对匿名访 ...
- php 一键wifi,懒人全自动脚本,一键自动swap2c一键3d加速,一键wifi加速等等.doc
懒人全自动脚本,一键自动swap2c一键3d加速,一键wifi加速等等 前言/注意事项 以下有部分补丁并不是能适合所有的ROM使用,请在下载/使用前看清楚我在帖子中的说明,如果因为用户自身问题造成手机 ...
- 防百度云加速html,国内免费CDN百度云加速服务体验 - 国内外加速、防护、提高搜索体验...
百度云加速从早期与加速乐的合作,到目前独立开发和运营的3.0版本,基本上已经完成功能和结构以及全国大部分节点的布局.目前百度云加速有提供免费/付费国内CDN服务(需要BA)以及免费国外CDN服务(如果 ...
- go依赖包下载加速方法及github加速
go依赖包下载加速方法及github加速 对于https://github.com/kubernetes/kubernetes整个仓库大小为近900M,下载起来那个伤心: 方法一:使用码云 这是码云上 ...
- Docker下载加速:Docker镜像下载加速、pip 下载加速、apt 下载加速
一.参考资料 docker国内镜像源 二.重要说明 Docker 默认的下载源均在国外,没有VPN的情况下,下载速度都很慢,为此需要设置国内的下载镜像源: Docker 下载加速可从三个方面加速:Do ...
- cdn搭建原理_beijingshij:cdn加速原理图解cdn加速原理以及实现
cdn加速原理图解cdn加速原理以及实现 伴随着互联网技术的发展趋势,用户在应用互联网时对网址的访问速率和实际效果更加高度重视,但因为用户数量猛增,互联网访问相对路径太长,进而使用户的访问品质遭受比较 ...
最新文章
- InitializeComponent()有什么作用?
- 说实话,你工作5年,不知道什么是Java agent技术,让我很吃惊...
- 这大概是一篇最简单最清晰的Java JVM执行流程
- LiveVideoStackCon 2019北京日程发布
- WildFly 10 CR 2发布– Java EE 7,Java 8,Hibernate 5,JavaScript支持热重载
- 1716. 计算力扣银行的钱
- 关于Apache Tomcat解决localhost was unable to start within 45 seconds
- 基于Linux命令行终端的ftp客户端程序
- 操作系统源代码_计算机自制操作系统(八):仿生DOS操作系统源代码
- Win7和win10下python3和python2同时安装并解决pip共存问题
- LINUX-VIM编辑器常用命令大全(超全)
- 什么是CIF/4CIF/QCIF/D1
- 无法使用资源管理器打开FTP,别被百度的结果坑了
- 利用Django创建简单app
- c#把word文档转换为html页面
- 如何解决 vue 初始化页面闪动问题
- linux安装bz2压缩文件,Linux下*.tar.gz/.tar.bz2 文件解压缩安装命令
- 根据checkBox的状态,控制按钮可否点击。不可点击置灰
- 盘点丨全球政府机构十大网络安全事件
- 社会最底层的人,如何突破人生圈层,改变命运?
热门文章
- 计算机辅助化学教育,在计算机辅助下的化学教学_计算机辅助制造
- 前沿讲座之计算机图形学
- KGB知识图谱完成金融行业的信息抽取工作
- mysql数据库首次查询缓慢
- linux串口无线透传,一种无线串口透传系统的制作方法
- ANSA二次开发实战——车身弯扭刚度计算文件自动生成(1)
- 大学教师与大学学生的彼此期望
- 使命召唤手游显示服务器停服,使命召唤手游停服了吗 是手游还是端游
- DownloadHelper使用教程
- zlib库介绍四:zlib算法(LZ77、LZ78、霍夫曼编码、滑动窗口、Rabin-Karp算法、哈希链、I/O缓冲区)