简体   繁体   English

在Yii Framework中包括CSS和JS文件

[英]Including CSS and JS files in Yii Framework

I met a problem while trying to include CSS and JS files by registerScriptFile and registerCssFile method in Yii Framework. 尝试通过Yii Framework中的registerScriptFile和registerCssFile方法包含CSS和JS文件时遇到问题。

I gathered all CSS and JS files which put in head tag, 我收集了所有放在head标签中的CSS和JS文件,

<script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl; ?>/js/jquery.ad-gallery.js"></script>   
<link href="<?php echo Yii::app()->theme->baseUrl; ?>/css/jquery.ad-gallery.css"rel="stylesheet" type="text/css"></link>

moved them into header widget and replaced with these code: 将它们移至标题小部件并替换为以下代码:

Yii::app()->getClientScript()->registerCssFile(Yii::app()->theme->baseUrl.'/css/jquery.ad-gallery.css');
Yii::app()->getClientScript()->registerScriptFile(Yii::app()->theme->baseUrl.'/js/jquery.ad-gallery.js', CClientScript::POS_HEAD);

CSS files turned out without any problem. 事实证明CSS文件没有任何问题。 However, JS files seemed to fail and encounter error: 但是,JS文件似乎失败并遇到错误:

Uncaught TypeError: Object [object Object] has no method 'fancybox' 未捕获的TypeError:对象[object Object]没有方法'fancybox'

Did I do anything wrong? 我做错了吗?

The "jquery.ad-gallery.js" file may be connected to the page before jquery. “ jquery.ad-gallery.js”文件可以连接到jquery之前的页面。 Try removing the option "POS_HEAD" or replace it with "POS_END". 尝试删除选项“ POS_HEAD”或将其替换为“ POS_END”。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM