CI自定义js,css的url
来源:互联网 发布:plu键盘 mac驱动 编辑:程序博客网 时间:2024/06/13 11:24
文章出处:http://zzstudy.offcn.com/archives/7814
codeigniter 扩展url辅助方法 方便引入css样式文件
自从转到Ruby后,有一段时间没有碰PHP了。
今天用Codeigniter随便写点东西。以前看的也都快忘的差不多了
当我要在View层引入style,images,javascript的时候深感不便。翻出手册看了看。
发现了 URL 辅助函数 base_url()
在config.php中把base_url() 配置为网站的根url
然后在项目的根目录新建了public文件夹,然后下面分css,images,javascript三个文件夹
在view层 使用base_url()的话必须得这样
引入css
1 <link rel='stylesheet' type='text/css' href='’media=’all’>
引入javascript
1 <script type='text/javascript'src='’>
如果显示图片
1 <img src='’/>
每次都要/public/css /public/images /public/javascript
如果下面路径更深的话,很是不方便啊!
顿时感觉弱爆了。有木有……
thinking……
既然config.php下可以配置base_url() 那我可不可以配置个别的呢,行不行先试试再说
迅雷不及掩耳盗铃之势 在base_url的下面配置了三项 格式一模一样 肯定不会错
1 // these is only a try
2 $config[‘style_url’] = ‘http://localhost/new/public/css/';
3 $config[‘images_url’] = ‘http://localhost/new/public/images/';
4 $config[‘javascript_url’] = ‘http://localhost/new/public/javascript/';
注:http://localhost/new/ 为我的项目url
刷新页面,不好使,报错了,相应的函数不存在,codeigniter在url辅助函数 里实现了base_url方法,
而我们自己配的 style_url images_url javascript_url 并没有自动实现相应的方法
怎么办?
既然这样不行,那就只能扩展url辅助方法了,在system/helpers/下 我发现了
url_helper.php 文件 打开 搜索 base_url
果然在里面实现了base_url()
1 if ( ! function_exists(‘base_url’))
2 {
3 function base_url($uri = ”)
4 {
5 $CI =& get_instance();
6 return $CI->config->base_url($uri);
7 }
8 }
很简单的几行代码,复制代码 粘贴在base_url 函数后面,稍加修改来 实现我自己的url辅助函数
1 if ( ! function_exists(‘css_url’))
2 {
3 function css_url($uri = ”)
4 {
5 $CI =& get_instance();
6 return $CI->config->base_url(“/public/css”.$uri);
7 }
8 }
修改下view页面 使用css_url()来加载css文件
1 <link rel='stylesheet' type='text/css' href='’ media=’all’>
刷新,效果出来没, 没出来 那是你肯定那个地方出了问题 再仔细检查下
然后 再复制? 实现javascript image url方法?
这里是框架的核心文件 随便这样修改不好吧!!!! 看下手册 有自定义辅助方法
在/application/helpers/下新建MY_url_helper.php文件
在第一行 加上
1 <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
把刚才实现的css_url函数 从系统的文件中 剪切出来 粘贴到这个文件里
然后同样的再实现javascript_url image_url 方法 注意路径 根据自己的项目 修改路径
到这里 以后引入样式文件 是不是 方便了很多呢
但是我依然不是很满意,还是需要写很长的 link标签 script标签
虽然我知道有zencoding 但是我还是想用代码来实现。- -!不然怎么装高手
在rails中 可以一个函数搞定。php当然也可以,那就对MY_url_helper.php再改造。
代码很简单,我的代码如下:
01 if ( ! function_exists('css_url'))
02 {
03 function css_url($uri = '')
04 {
05 $CI =& get_instance();
06 $css_string= "config->base_url(“/public/css”.$uri).”‘ media=’all’>”;
07 return $css_string;
08 }
09 }
10 //———————————
11 if ( ! function_exists(‘javascript_url’))
12 {
13 function javascript_url($uri = ”)
14 {
15 $CI =& get_instance();
1 $javascript_string= “”;
1 return $javascript_string;
2 }
3 }
然后在view中 我们直接一个函数加上 短短的文件名 就可以很方便的引入 css javascript
- CI自定义js,css的url
- CI 引入JS,CSS,图片的路径问题
- 在 Codeigniter(CI)中引入外部的JS与CSS的配置及使用
- PHP CI框架的url路由配置
- 怎么(如何在CODEIGNITER中)在CI中引入外部的JS与CSS呢?
- 怎么在CI中引入外部的JS与CSS呢?
- 在CODEIGNITER中 在CI中引入外部的JS与CSS呢
- php ci框架中加载css和js文件失败的原因及解决方法
- CI框架整合Smarty模板时包含css,js文件的解决方法
- php ci框架中加载css和js文件失败
- 关于CI框架引入CSS与JS文件
- ci 框架 index.php以及 js css 路径问题
- 让ci的url检测通过中文字符
- CI框架 .htaccess 隐藏url中index.php的解决
- CI框架(8)- 获得url里面的参数
- 用户自定义控件引入js和css的方法
- js+css实现的自定义浏览器滚动条
- JS的URL编码
- 收集android上开源的酷炫的交互动画和视觉效果:Interactive-animation
- 听鬼哥说ZJDROID脱壳的简单使用
- 手机自动化测试(5)--Appium环境搭建、可能遇到的问题以及附属工具
- 常用数学符号的 LaTeX 表示方法
- 运用QRegExp 解析字符串
- CI自定义js,css的url
- Mysql用户管理
- 绘图与动画之使用自定义属性与Quartz实现扇形加载动画
- 安卓学习经验总结:芯灵思开发板安卓底层开发
- Leetcode-91-Decode Ways C#
- UNIX Tutorial Eight
- NSObject--NSDate常用方法
- [MySQL FAQ]系列 — 线上环境到底要不要开启query cache
- 纸上谈兵: 树, 二叉树, 二叉搜索树