如何使此Yii扩展显示资产图像?

如何使此Yii扩展显示资产图像?,yii,Yii,Yii 1.1.8 问题: 我有一个slidewshow(nivo)扩展,它或多或少可以工作,但页面上没有显示图像,也没有运行动画或效果。我看到按钮占位符文本,我可以制作下一个和上一个,但没有效果或图像 场景: 该扩展的资产文件夹具有以下结构: assets/themes/default/default.css assets/themes/default/arrows.jpg assets/themes/default/bullets.jpg assets/themes/default/bkgr

Yii 1.1.8

问题:

我有一个slidewshow(nivo)扩展,它或多或少可以工作,但页面上没有显示图像,也没有运行动画或效果。我看到按钮占位符文本,我可以制作下一个和上一个,但没有效果或图像

场景:

该扩展的资产文件夹具有以下结构:

assets/themes/default/default.css
assets/themes/default/arrows.jpg
assets/themes/default/bullets.jpg
assets/themes/default/bkground.jpg
default.css
上,我有以下声明:

background:#fff url(bkground.jpg) no-repeat 50% 50%;
(...)
background:url(bullets.png) no-repeat;
以此类推,指向根

以下是此扩展上的
publishAssets()

$assets = dirname(__FILE__).'/assets';
$baseUrl = Yii::app()->assetManager->publish($assets);
if(is_dir($assets)){
 Yii::app()->clientScript->registerCssFile($baseUrl . '/themes/default/default.css';
} else {
 throw new Exception('Error: Couldn\'t publish assets.');
}
尝试:

我已经测试了
registercsfile
是否返回
NULL
,它不是。因此,我相信
default.css
已正确注册

我已检查这些文件是否显示在public_html/assets文件夹中,并且它们确实显示在:

public\u html/assets/randomhash/themes/default/default.css
(等等…)

为了确保这一点,我检查了Yii guts上的发布方法,并:

publish($path,$hashByName=false,$level=-1,$forceCopy=false)
level=-1
意味着发布所有的子目录和文件,所以也可以

因此,这些资产正在被公布

问题:

我不知道在哪里可以找到更多信息,以便找到为什么在扩展工作正常(但没有它们)时这些图像不会出现

有人能给我一个线索吗


提前感谢。

您的CSS可以简单地使用url(../images/bkground.jpg)引用图像,而无需知道资产散列的值。

中的
默认.CSS
文件apppear?是的。如果我点击它,我会得到想要的文件。CSS文件中图像的路径(如背景url)总是相对于CSS文件引用的。尝试使用url(默认值/bkground.jpg)。你是对的。检查bkground.jpg(默认值/bkground.jpg)是否位于您的公共\u html/assets/randomhash/themes目录中。是否可以从浏览器访问?尝试清理缓存,重新启动浏览器和web服务器。如果css文件和图像文件在/assets/acda762/themes/default/上可用,并且您设置了url(bkground.jpg),则问题可能出在重写原始css类的css样式中。或者你的div是不可见的。我创建了一个简单的例子,一切都很好,如果css/图像文件可用,那么css规则或js代码就有问题了。