Js和css文件混合方法
现在如果你是一名从事网页加载性能优化的人员,你应该知道每次下载都会浪费大量的资源,在页面中你引入了越多的外部文件你的页面加载速度就会越慢。
很典型的web页面都会引入很多的js和css文件,这些都会导致资源的浪费,现在最好的办法就是指引入一份的js文件和一份css文件。毫无疑问,这可以很好的帮助你启动PLT(页面加载时间)。
但是如果您认为,两份文件仍然不够理想,那么现在我们将看到一个技巧将js和css混合成一份文件。我是在搞ms的msn live 的页面优化时发现这个小技巧的。
这个技巧依赖于ie或是ff如何去解读css和js的行为。
当css解析器遇到一个html的注释标记<! - -在一个css文件里面,这个标记会被忽略掉。
当js的解析器遇到这个标记时,他会将它看成是//,因此后面的所有代码都会被当作注释。
好了,看看下面的代码:
<! -- /*
function show(){
alert(‘hello’)
}
<! -- */
<! – body{ background-color:red}
这段代码我们看看,分别由css解析和js解析之后的结果。
Css:
/*
function show(){alert(‘hello’)}
*/
Body {…}
Js:
// /*
function show(){…}
// */
//body{…}
真是不错啊,在js和css 解析里面都能够得到他们自己想的内容,而不被其他内容所混淆,挺讨巧的一个方法。以后你就可以这样引用了:
<link type="text/css" rel="stylesheet" href="test.jscss" />
<script type="text/javascript" language="javascript" src="test.jscss"></script>
这个test.jscss文件就是你需要的。还有一点就是response的content type应该设置成 */*否则ff里面有可能把它当成其他任何东西。
注意:js代码中要取消掉多行注释。
以上为翻译内容,如果不当还请各位指点。
其实最有意思的是下面的老外们的回复,有的说,我可以直接的js文件中对对象的style属性(cssText)进行定义,也就不需要这种技巧了,还有地说,我直接把这些都写在html文件中不是更好,就只用请求这个页面,都不需要引入外部的什么jscss文件了。有的大批特批说这样会造成代码的混乱不堪,甚至是无法维护。作者也对此发表了自己的看法:keep the js, css files separate on disk and combine them at runtime。(运行时混合文件,平时分开保存),还有什么这样写的标准问题,安全问题(xss attack),通过缓存解决这类问题等等。不过好像看起来,更多感觉象是种奇技巧淫,没什么人说这个好。。。。。
分享到:
相关推荐
2. **CSS文件合并**:类似地,多个.css文件被合并成一个单一的.css文件。这样不仅可以减少HTTP请求,还可以帮助避免样式冲突,因为所有的样式规则都在同一个文件中定义。 3. **压缩**:除了合并,许多工具还会对...
在这个类中,我们可以定义资源包(bundle),这些包可以包含多个js或css文件,并且可以设置它们的压缩和合并策略。 下面是一段典型的`BundleConfig`配置代码示例: ```csharp public static void RegisterBundles...
1.目录source:需要压缩的源文件 ...4.合并压缩css.bat 根据source将css进行合并到in目录,并输出到out目录 5.合并js.bat 只将source下数据合并到in目录 6.合并js.bat 只将in下数据合压缩处理到out目录
这种技术通常被称为“文件合并与压缩”,它将多个js和css文件合并为一个文件,并去除其中不必要的空白、注释以及进行其他优化,以减小文件大小。下面将详细介绍这一过程及其相关知识点。 首先,我们要了解为什么要...
技术点:1、使用htmlparser解析html文件,得到html代码里的js、css、img链接 2、将相对路径的链接转变成绝对路径,并读取资源 3、将css和js合并到html 4、将图片转换成base64编码,写入标签的src
JS、CSS 合并压缩工具是用于优化前端资源加载效率的重要工具,它们能够将多个 JavaScript 和 CSS 文件合并为一个文件,并进行压缩,减少网络请求次数,从而提高网页加载速度。本篇将详细介绍名为 TomsTools 的一套 ...
- **合并顺序**:CSS文件的加载顺序很重要,因为它们会影响样式生效的顺序。JavaScript文件的合并也需要考虑依赖关系,确保脚本的执行顺序正确。 - **代码压缩**:除了合并,通常还会进行代码压缩,去除空格、注释和...
3. **代码合并**:将多个js文件合并成一个,减少HTTP请求次数,进一步提高加载速度。 常用的JavaScript压缩工具有UglifyJS、Terser和Google Closure Compiler等。这些工具不仅能压缩代码,还能进行死代码检测和消除...
"tmp_js_json_dir": "D:\\projects\\github_project\\merge_js_css\\examples\\json\\js", //js合并中间过程文件目录 "tmp_css_json_dir": "D:\\projects\\github_project\\merge_js_css\\examples\\json\\css", /...
1. 找到所有需要合并的JS和CSS文件。 2. 压缩这些文件,去掉无用字符。 3. 将它们合并成一个或少数几个文件。 4. 在部署时,服务器将只返回这些合并压缩后的文件,而不是原始的多个文件。 总的来说,通过JS和CSS的...
本文将详细介绍"js、css文件压缩工具"及其相关知识点。 首先,JS和CSS文件的压缩主要涉及两个方面:代码压缩和代码混淆。代码压缩是通过删除不必要的字符(如空格、注释和换行)来减小文件大小,这一过程通常不会...
在Web项目的开发中,js,css文件会随着项目的开发变得越来越多,越来越大,这就给给性能方面带来一些问题,如,页面引入的的js,css越多的话,那么对就增加了http请求数,解决该问题的一个好的方法就是合并js,css文件....
当用户打开一个页面,浏览器需要为每个JS和CSS文件发送单独的请求,这会增加页面加载时间。因此,通过合并这些文件,我们可以减少网络请求的次数,使得整体页面加载更快。 JS合并是将多个JavaScript文件整合到一个...
3. **CSS压缩**:除了JavaScript,JSCompress也支持CSS文件的压缩,合并同类选择器,去除冗余属性,优化代码结构。 4. **错误检测**:在压缩过程中,工具会检查语法错误,确保压缩后的文件不会影响功能。 5. **兼容...
同时,YUI Compressor还提供了CSS的合并功能,可以将多个CSS文件合并为一个,进一步减少HTTP请求,提升性能。 **使用YUI Compressor的步骤** 1. **安装**:首先,你需要下载YUI Compressor的源码或者通过npm(Node...
总结来说,这个过程展示了如何通过批处理脚本自动化处理JavaScript和CSS文件,利用yuicompressor进行压缩,以及如何定制文件合并顺序以满足项目依赖,最终达到优化前端资源加载效率的目的。这对于大型项目尤其重要,...
在这种情况下,"在CSS文件里导入其它的CSS文件"这一技巧就显得尤为重要。这允许我们将样式代码模块化,从而简化管理,并有助于减少重复和混乱。 在CSS中,我们可以使用`@import`规则来导入其他CSS文件。例如: ```...
上述配置表示,对于所有.html文件,启用concat模块,将所有css目录下的.css文件合并到css/all.css,所有js目录下的.js文件合并到js/all.js。 压缩包中还包含了一个"帮助.txt"文件,这是mod_concatx的使用指南,详细...
例如,使用`grunt-contrib-concat`可以轻松地将多个JavaScript或CSS文件合并在一起。 3. **简单语法检查**:确保代码质量的一致性和规范性,避免潜在的错误。Grunt支持多种语法检查插件,如`grunt-contrib-jshint`...