• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

对网站中的js,css文件进行打包

php 搞代码 4年前 (2022-01-04) 28次浏览 已收录 0个评论

一,为什么要用smarty进行打包

apache中也有给js,css这样的静态文件进行打包压缩的模块,但是本文所说的不是以这种方式进行的打包,而是和smarty结合的方式来把网站中的js,css文件进行打包。

为什么要进行打包呢,主要目的是为了合理的管理自己的代码。现在有好多网站,你查看一下网站的源码的话,你会发现网站的头部有大量的JS文件和CSS文件,网站的尾部也有可能有大量的JS文件。以webqq为例吧:

<script type="text/javascript" src="js/util.js?20100429001"></script><script type="text/javascript" src="js/webeditor.js?20100429001"></script><script type="text/javascript" src="js/helptip.js?20100429001"></script><script type="text/javascript" src="js/window.js?20100429001"></script><script type="text/javascript" src="js/main-panel.js?20100611001"></script><!-- this script is for flashplayer version detection --><script type="text/javascript" src="js/fp_detect.js"></script><!--script type="text/javascript" src="js/tab-msgbox.js?20090311"></script--><script type="text/javascript" src="js/tab-buddystate.js?20090927001"></script><!--script type="text/javascript" src="js/tab-buddyimpression.js?20090311"></script--><script type="text/javascript" src="js/tab-addbuddy.js?20091210001"></script><script type="text/javascript" src="js/main.js?20100611001"></script><script language="javascript" src="http://pingjs.qq.com/ping.js"></script>

上面的代码是放在webqq的底部,看着很不爽,如果只显示一个话,看着是不是很舒服呢?结果是肯定的。

二,用一个JS文件来包涵多个JS文件

1,用function

function i<mark style="color:transparent">来源gaodaimacom搞#代%码网</mark>nclude(filename) { document.write("&lt;script language='JavaScript' type='text/javascript' src='" + filename + "'&gt;&lt;/script&gt;");} include("js/jquery-1.3.2.js");include("js/test.js");

2,用数组

var jsarray = new Array();jsarray[0] = "js/jquery-1.3.2.js";jsarray[1] = "js/test.js";for(i=0;i&lt;jsarray.length;i++){ document.write("&lt;script type='text/javascript' src='"+jsarray[i]+"'&gt;&lt;/script&gt;");}

三,模板文件

{foreach from=$jsArr item=js}&lt;script src="{$js}" type="text/javascript"&gt;&lt;/script&gt;{/foreach}

四,调用模板的php文件

public function addCss($<a href="http://www.php1.cn/category/72.html">css</a>) { if (!is_array($<a href="http://www.php1.cn/category/72.html">css</a>)) { $this-&gt;tpl-&gt;append('<a href="http://www.php1.cn/category/72.html">css</a>Arr', $<a href="http://www.php1.cn/category/72.html">css</a>); } else { $this-&gt;tpl-&gt;append('<a href="http://www.php1.cn/category/72.html">css</a>Arr', $<a href="http://www.php1.cn/category/72.html">css</a>, true); } }  public function addJs($js) { if (!is_array($js)) { $this-&gt;tpl-&gt;append('jsArr', $js); } else { $this-&gt;tpl-&gt;append('jsArr', $js, true); } }$this-&gt;addJs("./js/test.pkg.js");

五,总结

这样做的好处是什么呢,个人分析了以下二点:

1,把一个页面包涵的js,css文件转变成一个,代码简单

2,把这些js,css放到一个js文件里面,便于管理,如果我想加一个js,减一个js很方便,你就不用在去改模板了,如果模板多的话,你都要一个页面,一个页面去改的话,很烦人的。

如果用的不是smarty模板的话也是一样,都可以拿出来的,如果没用模板的话也是可以的,在这里只是表达一种思想。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:对网站中的js,css文件进行打包

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址