- 浏览: 83659 次
文章分类
- 全部博客 (136)
- 我的技术资料收集 (98)
- 具体技术 (1)
- 的技术资料收集 (4)
- All Articles (1)
- 机器学习 Machine Learning (1)
- 网络编程 (1)
- java (2)
- ava (1)
- 零散技术 (1)
- C# (3)
- 技术资料收集 (1)
- CQRS (1)
- 数据库技术(MS SQL) (1)
- .Net微观世界 (1)
- Oracle SQL学习之路 (1)
- C/C++ (1)
- JS/JQ (1)
- Js封装的插件/实例/方法 (2)
- 敏捷个人 (2)
- Javascript (1)
- 程序设计---设计模式 (1)
- Bug (1)
- 未知分类 (1)
- 程序设计 (1)
- Sharepoint (1)
- Computer Graphic (1)
- IT产品 (1)
- [06]JS/jQuery (1)
- [07]Web开发 (1)
- .NET Solution (1)
- Android (3)
- 机器学习 (1)
- 系统框架设计 (1)
- Others (1)
- 算法 (1)
- 基于Oracle Logminer数据同步 (1)
- 网页设计 (1)
- 原创翻译 (1)
- EXTJS (1)
- Jqgrid (1)
- 云计算 (1)
最新评论
原帖地址:http://www.cnblogs.com/guozeng/archive/2013/05/29/3107150.html
相对与HTML,CSS,javascript是最影响浏览器性能的,因为浏览器在遇到<script>标签时,必须等待js代码下载和执行完毕后再执行后面的内容,因此当页面中js文件过多时,网站访问速度明显下降。然而,现在的web应用用到js只会越来越多,那么我们如何有效组织js代码来提高网站的性能呢?通过相关资料,我总结了以下需要注意的几点。
1、将script标签置于网页底部,一般置于<body/>标签之前。这样用户不必等待js加载并执行完成后就可以完整的浏览整个网页。
2、将多个js文件合并到一个url中加载,以减少http请求。对于此点,可阅读 http://dancewithnet.com/2010/06/08/minify-js-and-css-files-in-server/
3、通过js动态创建<script>标签动态加载js文件,以达到无阻赛的加载脚本,可以写一个函数来做这个工作
1 function loadScript(url,callback){
2 var script=document.createElement("script");
3 script.type="text/javascript";
4 if(script.readyState){
5 //ie 浏览器
6 script.onreadystatechange=function(){
7 if(script.readyState=="loaded" || script.readyState=="complete"){
8 script.onreadystatechange=null;
9 callback();
10 }
11 }
12 }else{
13 script.onload=function(){
14 callback();
15 }
16 }
17 script.src=url;
18 document.getElementByTagName("head")[0].appendChild(script);
19 }
以上这种方式是一种跨浏览器的非常易用的方法,也可以通过XMLHttpRequest脚本注入的方式,但此方式有跨域的限制,所以推荐上面的方式。
互联网上有很多这样的js库,供我们下载使用:
Lazyload类库,下载地址:http://github.com/rgrove/lazyload/
使用方法
1 <script type="text/javascript" src="lazyload-min.js"></script>
2 <script type="text/javascript">
3 LazyLoad.js("test.js",function(){
4 Application.init();
5 })
6 </script>
同时加载多个文件
<script type="text/javascript" src="lazyload-min.js"></script>
<script type="text/javascript">
LazyLoad.js(["test1.js","test2.js","test3.js"],function(){
Application.init();
})
</script>
LABjs类库下载地址:http://labjs.com
使用方法
<script type="text/javascript" src="lab.js"></script>
<script type="text/javascript">
$LAB.script("test.js").wait(function(){
Application.init();
});
</script>
//加载多个
<script type="text/javascript">
$LAB.script("test1.js").script("test2.js").wait(function(){
Application.init();
});
</script>
LAB的好处是可以灵活的处理是否加载。
<script type="text/javascript" src="lab.js"></script>
<script type="text/javascript">
$LAB.script("test1.js").script("test2.js").wait().script("test3.js").wait(function(){
Application.init();
});
</script>
这样就可以让test1.js和test2.js加载执行完成后再加载执行test3.js。
发表评论
-
C#WebBrowser控件使用教程与技巧收集--苏飞收集 - sufeinet
2013-06-28 12:07 1067原帖地址:http://www.cnblogs.com/suf ... -
我要喷一个自认为很垃圾的网站架构 - 老赵【苏州】
2013-06-28 12:01 1126原帖地址:http://www.cnblogs.com/lao ... -
[翻译] Oracle Database 12c 新特性Multitenant - Cheney Shue
2013-06-28 11:43 620原帖地址:http://www.cnblogs.com/ese ... -
memcahd 命令操作详解 - 阿正-WEB
2013-06-28 11:37 469原帖地址:http://www.cnblogs.com/azh ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 593原帖地址:http://www.cnblogs.com/ste ... -
面向过程的代码符合大众的思维方式吗? - 史蒂芬.王
2013-06-27 10:28 558原帖地址:http://www.cnblogs.com/ste ... -
RPG游戏之组队测试 - zthua
2013-06-27 10:22 557原帖地址:http://www.cnblogs.com/zth ... -
IT人们给个建议 - SOUTHER
2013-06-26 14:06 523原帖地址:http://www.cnblogs.com/sou ... -
Java向前引用容易出错的地方 - 银河使者
2013-06-26 14:00 492原帖地址:http://www.cnblogs.com/nok ... -
使用Func<T1, T2, TResult> 委托返回匿名对象 - 灰身
2013-06-26 13:54 799原帖地址:http://www.cnblo ... -
【web前端面试题整理03】来看一点CSS相关的吧 - 叶小钗
2013-06-25 10:45 782原帖地址:http://www.cnblogs.com/yex ... -
Windows 8 动手实验系列教程 实验6:设置和首选项 - zigzagPath
2013-06-25 10:27 617原帖地址:http://www.cnblogs.com/zig ... -
闲聊可穿戴设备 - shawn.xie
2013-06-25 10:21 562原帖地址:http://www.cnblo ... -
CentOS下Mysql安装教程 - 小学徒V
2013-06-23 15:24 608原帖地址:http://www.cnblogs.com/xia ... -
vmware安装ubuntu12.04嵌套安装xen server(实现嵌套虚拟化) - skyme
2013-06-23 15:18 836原帖地址:http://www.cnblogs.com/sky ... -
之前专门为IE6、7开发的网站如何迁移到IE10及可能遇到的问题和相应解决方案汇总 - 海之澜
2013-06-23 15:12 949原帖地址:http://www.cnblogs.com/wuz ... -
Android学习笔记--解析XML之SAX - 承香墨影
2013-06-23 15:01 407原帖地址:http://www.cnblo ... -
SQL Server 性能优化之——T-SQL TVF和标量函数
2013-06-19 09:32 670原帖地址:http://www.cnblogs.com/Boy ... -
Nginx学习笔记(二) Nginx--connection&request
2013-06-19 09:26 665原帖地址:http://www.cnblogs.com/cod ... -
从郭美美霸气侧漏看项目管理之项目经理防身术
2013-06-19 09:20 499原帖地址:http://www.cnblogs.com/had ...
相关推荐
1. **动态`<script>`元素**:在"init.js"中,可以动态创建`<script>`元素,并设置其`src`属性为要加载的JavaScript文件。然后将这个元素插入到DOM中,浏览器会自动开始下载并执行该脚本。 2. **利用模块系统**:...
总的来说,`HttpCombiner`是ASP.NET中一个强大的工具,通过打包和压缩CSS和JS文件,它可以有效地提升网站的加载速度和用户体验。合理地运用这一技术,能够帮助开发者在不牺牲功能的前提下,优化网站性能,降低服务器...
在网站开发中,JavaScript(简称JS)是一种必不可少的前端编程语言,它为网页提供了动态交互的能力,让用户体验更加丰富和个性化。"网站开发中常用JS文件"这个压缩包集合了两个重要的JS应用实例:淘宝网广告代码和...
动态加载JS(Dynamic JavaScript Loading)是现代Web开发中的一个重要技术,它可以提高页面的加载速度,减少初始加载的数据量,并在需要时按需加载资源,从而优化用户体验。 在ExtJS 3中,虽然没有像ExtJS 4那样...
"js文件合并、压缩、缓存、延迟加载"是提高页面加载速度和用户体验的关键技术。这里,我们详细探讨这些概念及其在MVC应用程序中的应用。 首先,**js文件合并**是将多个JavaScript文件整合到一个文件中的过程,以...
动态加载可以有效减少页面初始加载的资源量,提升用户访问速度,是前端优化中一个重要的技术点。同时,本文也提到了在JavaScript程序设计中可能遇到的错误与调试技巧,以及扩展技巧,这些都是提高JavaScript开发效率...
在开发过程中,为了提高网页加载速度、减少网络传输的数据量以及提升用户体验,开发者通常会将JS文件进行压缩,这就是所谓的“JS文件压缩”。其中,“min”格式的JS文件就是经过压缩优化后的版本,它们去除了不必要...
动态加载(也称为懒加载)是一种优化性能的技术,只在用户需要时才加载数据,而不是一次性加载所有数据,这对于处理大量数据或层级结构尤其有用,可以显著提升页面加载速度和用户体验。 本项目在官方Bootstrap ...
对于静态资源,如图片、CSS和JavaScript文件,可以将其缓存到本地,下次加载时直接从缓存读取,避免网络请求。 3. **异步初始化**:WKWebView的初始化过程是阻塞的,如果在主线程上进行,会阻塞用户界面。因此,应...
在Java开发中,压缩JavaScript(js)和CSS(样式表)文件是一项常见的优化技术,用于减少网页加载时间和提高用户体验。这种技术通常被称为“文件合并与压缩”,它将多个js和css文件合并为一个文件,并去除其中不必要...
本文旨在探讨通过Web设计优化来提升网站访问速度的方法,具体包括利用Firefox/Firebug插件YSlow进行评估与优化、服务器配置优化以及其他相关策略。 #### 1. Firefox/Firebug插件YSlow简介 YSlow是由Yahoo开发的一...
标题中提到的"js文件,一般的网站都用得上",这句话强调了JavaScript在现代网页开发中的重要性。无论是在大型电商网站、社交媒体平台还是个人博客,JavaScript都发挥着不可或缺的作用。 描述中列举了一些常见的...
### 提升网站访问速度与加载效率的关键策略 在当今互联网高度发达的时代,用户对网站的访问速度和加载效率有着越来越高的要求。一个响应迅速、加载流畅的网站不仅能提供更好的用户体验,还能有效提升网站的搜索引擎...
在技术层面上,Chrome 92.0.4515.131优化了多项关键性能指标,如加载速度和网站检测速度。这主要得益于以下几个方面: 1. **渲染引擎优化**:Chrome使用Blink渲染引擎,这是一个高效的HTML5和CSS3支持的引擎。优化...
本文将根据提供的内容,详细介绍几种有效提升网站访问速度的方法。 #### 一、服务器优化 **1. 操作系统与环境配置:** - 使用64位Windows Server 2008 R2 + Hyper-V + .NET Framework + IIS 7.5 或 64位Windows ...
下面,我们将详细解析这些方法,帮助你理解并应用它们,以实现网站访问速度的显著提升。 1. **减少HTTP请求**:每个HTTP请求都会增加页面加载时间。通过合并CSS和JavaScript文件、使用CSS Sprites技术将多个图像...
以下是一个简单的示例,展示了如何使用jQuery动态加载JavaScript文件: ```html <script type="text/javascript" src="jquery-1.7.2.min.js"> 利用 jQuery 动态加载 js <div id="content"></div> ...
1. 引入flexible.js:在HTML文件的`<head>`部分引入flexible.js库,确保它在其他CSS和JavaScript资源之前加载,以便在页面渲染初期就能执行适配。 2. 配置Echarts:在初始化Echarts实例时,利用flexible.js提供的`...
总的来说,理解并掌握ExtJS的动态加载菜单功能,不仅可以提升Web应用的用户体验,还可以帮助开发者更好地优化应用性能。通过灵活运用动态加载、拖放、DWR等技术,可以构建出更符合用户需求的交互式菜单系统。
WKWebView相比UIWebView有着更好的性能和更低的内存占用,支持现代Web标准,能更好地执行JavaScript,使得网页加载速度更快。在本项目中,我们关注的是如何优化WKWebView的加载过程,特别是如何实现本地资源优先加载...