在项目生成时就合并压缩你的js

网站优化来讲,合并压缩js、css等静态内容是必修课之一,一则可以节省宽带;二则可以减少http请求;三则加快了网站的访问速度

对于如何实现合并压缩js

方案一: 继承IHttpModule ,对http进行拦截,然后获取其<script src=*> tag,将js文件取出来合并成为一个资源文件

方案二:如果你用的web解决方案为 asp.net mvc 4,那么当然可以用Bundle技术。

方案三:不依赖任何服务器技术,本地先合并压缩好后再上传

本文着重讲解方案三

要合并文件,可以用dos下的copy命令

1 copy jquery.min.js+jquery-migrate-1.1.1.js+jquery.hoverIntent.minified.js+Validform_v5.3.1.js+jquery.cookie.js+the7.pw.js index.js/b

要压缩js文件,这里用到了uglifyjs。对于如何安装uglifyjs,可以参考此文

dos命令如下

1 uglifyjs index.js -m -o index.min.js

为了压缩一个js,每次进dos巧代码,也不是办法啊,所以可以建一个bat文件放在js目录,每次要上传前点一下就完事。

但这就够了吗,对于程序猿这样的懒人来说,点一次也是多余的。

所以我们可以利用项目生成时的预先事件来调用bat文件不更好吗?

这样,每次生成项目时,就生成了合并压缩版的js,岂不美哉

最后在页面中,我们可以直接引用压缩版js

在项目生成时就合并压缩你的js

时间: 2024-11-06 15:49:10

在项目生成时就合并压缩你的js的相关文章

使用Ant和YUICompressor链接合并压缩你的JS和CSS代码

JS代码和CSS代码在上线前要压缩大家应该都是知道的了.记得之前做项目的时候,最后要交差的时候是找了个网站,将JS代码的文件一个一个地复制,粘贴,复制,粘贴. 当时就在想:TMD有没有好一点的方法,劳资不想老是用Ctrl大法.啊啊啊啊啊啊啊啊阿~.最最坑爹的是,有时候将代码复制粘贴的时候手一抖可能就删了点什么东西,手一快又保存了,反正各种坑爹.坑到没朋友. 但是呢,不压缩也不是是吧? 在写JS代码渐渐多了起来的时候就发现手动压缩根本不是长远的方法.而且JS的代码也开始分块,分功能,分文件写了,尽

合并压缩css和Js的方式

[文章作者:磨延城 转载请注明原文出处: https://mo2g.com/view/74/] 本篇博客从减少浏览器加载外部资源连接数的思考角度着手,要想深入了解其他加快网页显示速度的原理,估计又得花不少时间,这需要把前端跟后端都说解释清楚.有时间我会分开写其他部分的内容.这里为了节省时间,只介绍如何减少网页需要加载的外部资源,加快浏览器的响应速度. 本篇博客从减少浏览器加载外部资源连接数的思考角度着手,要想深入了解其他加快网页显示速度的原理,估计又得花不少时间,这需要把前端跟后端都说解释清楚.

VS2010 win7 64位安装后新建项目生成时错误:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

解决方案:VS2010在经历一些更新后,建立Win32 Console Project时会出“error LNK1123” 错误,解决方案为将 项目|项目属性|配置属性|清单工具|输入和输出|嵌入清单 “是”改为“否”即可,但是没新建一个项目都要这样设置一次. 在建立VS2010 Win32 Project项目时,按照上面解决方案依然发生了“error LNK1123”错误,经过上网查资料,解决方案为: 第一步:与上相同. 第二步:将 项目|项目属性|配置属性|连接器|清单文件|嵌入清单 “是”

.net 项目生成时自动更新版本号

https://www.codeproject.com/articles/31236/how-to-update-assembly-version-number-automaticall Examples AssemblyInfoUtil.exe -set:3.1.7.53 "C:\Program Files\MyProject1\AssemblyInfo.cs" Set the version string to "3.1.7.53". AssemblyInfoU

grunt——合并压缩css和js

npm文档:www.npmjs.com [GruntFile.js] module.exports = function(grunt) { grunt.initConfig({ timestamp:'<%= grunt.template.today("yyyymmddHHMM") %>', jspath:'app/js/', csspath:'app/css/', concat: { js:{ options: { separator: ';' }, src: [ &quo

若要调试此模块,请将其项目生成配置更改为“调试”模式。若要取消显示此消息,请禁用“启动时若没有用户代码则发出警告”调试器选项

在VS调试的时候出现如下错误: [plain] view plain copy print? 生成下面的模块时,启用了优化或没有调试信息: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\...\*.DLL 若要调试此模块,请将其项目生成配置更改为“调试”模式.若要取消显示此消息,请禁用“启动时若没有用户代码则发出警告”调试器选项. 问题1: 1.右击“解决方案”选择“配置管理器”,将"release”改

介绍一种基于gulp对seajs的模块做合并压缩的方式

之前的项目一直采用grunt来构建,然后用requirejs做模块化,requirejs官方有提供grunt的插件来做压缩合并.现在的项目切到了gulp,模块化用起了seajs,自然而然地也想到了模块合并压缩的问题.然后一开始在解决这个问题的时候,并不是很顺利,在npm上并没有那种特别流行的专门用来做seajs合并压缩的gulp插件,虽然在seajs的github上也看了不少的issue,但是大多数都是只能将所有的模块文件合并成一个总的文件,这对于单页面的应用来说肯定没有问题,但是对于多页面的应

AngularJS结合RequireJS做文件合并压缩的那些坑

我在项目使用了AngularJS框架,用RequireJS做异步模块加载(AMD),在做文件合并压缩时,遇到了一些坑,有些只是解决了,但不明白原因. 那些坑 1. build.js里面的paths必须跟main.js里面的保持一致. 这个build.js就是r.js使用的配置文件,而main.js就是RequireJS的main文件.在合并压缩时候,build.js文件里面也需要写paths,而且还是跟main.js一样,我很奇怪为什么就不能识别main里面的require.config的pat

实际项目中,为什么多个css、js文件要实现合并与压缩?(了解了这你才算入门)

Web性能优化最佳实践中最重要的一条是减少HTTP请求.而减少HTTP请求的最主要的方式就是,合并并压缩JavaScript和CSS文件. 关于编写css时,我们应注意通过一些细节来控制css文件的大小,比如:全局样式.继承样式.缩写样式,空格.注释等:同时你也可以通过在线工具对你的css文件进行压缩,来减少css文件的大小,但压缩后的css文件在可维护性.识别性方面变的特别弱.但更复杂的情况是,如果你的页面里面引用了多个css.多个js文件时就可能处理不好. 多个css.多个js文件进行自动合