加载中...

Yii --EClientScript 扩展,css,js文件代码压缩合并加载


扩展插件下载地址,解压后复制到/protected/vendor/
    https://github.com/muayyad-alsadi/yii-EClientScript

main配置文件配置插件,components里面增加

  1. //js,css代码压缩,合并
  2. 'clientScript' => array(
  3. 'class' => 'application.vendor.yii-EClientScript.EClientScript',
  4. 'combineScriptFiles' => TRUE, // By default this is set to true, set this to true if you'd like to combine the script files
  5. 'combineCssFiles' => TRUE, // By default this is set to true, set this to true if you'd like to combine the css files
  6. 'optimizeScriptFiles' => !YII_DEBUG, // @since: 1.1
  7. 'optimizeCssFiles' => !YII_DEBUG, // @since: 1.1
  8. 'optimizeInlineScript' => false, // @since: 1.6, This may case response slower
  9. 'optimizeInlineCss' => false, // @since: 1.6, This may case response slower
  10. ),

工具类Unit.php放于/protected/vendor/components,类中定义加载方法

  1. /**
  2. * 注册JS 文件
  3. */
  4. public function jsFile($file,$position=CClientScript::POS_HEAD,$media=array()){
  5. $cs=Yii::app()->getClientScript();
  6. $cs->registerScriptFile($file,$position,$media);
  7. }
  8.  
  9. /**
  10. *注册CSS文件
  11. */
  12. public function cssFile($file,$media=''){
  13. Yii::app()->getClientScript()->registerCssFile($file,$media);
  14. }

模板调用css文件,js文件

  1. <?php
  2. //注册CSS文件,
  3. Unit::cssFile('/css/home/base.css');
  4. //result to:<link rel="stylesheet" type="text/css" href="/css/home/base.css" />
  5.  
  6. //IE6下加载CSS文件
  7. Unit::cssFile('/css/form.css','lte IE 6');
  8. //result to:<!--[if lte IE 6]><link rel="stylesheet" type="text/css" href="/css/form.css" /><![endif]-->
  9.  
  10. //注册JS文件,
  11. Unit::jsFile('/js/jquery.lazyload.js');
  12. //result to:<script src="/js/jquery.lazyload.js">
  13.  
  14. //IE9下加载JS文件
  15. Unit::jsFile('/js/common.js', CClientScript::POS_HEAD, array('media' => 'lt IE 9'));
  16. //result to:<--[if lt IE 9]><script src="/js/common.js"><![endif]-->
  17. ?>



还没有评论.