php - yii renderPartial 和 inlclude css with <link> 有延迟

标签 php jquery css yii cgridview

我正在使用 yii renderPartial 将 View 加载到 jquery 对话框中。 css被加载到view里面是

Yii::app()->getClientScript()->registerCssFile(Yii::app()->baseUrl.'/css/grid.css')

我还定义了 clinetscript,如下所示,其中 outputProcess = true。

     $cs = Yii::app()->clientScript;
$cs->reset();
$cs->scriptMap = array(
    'jquery.js'  =>  false,
   'jquery.min.js'  =>  false,
);

outputProcess = true,在最后一个参数中设置。

$this->getController()->renderPartial('sessionGrid', $params, false, true);

除了渲染 View 中的样式(部分)之外,一切正常..

上面提到的定义的样式不会出现(影响屏幕)但在页面呈现后它只会应用并且用户能够立即看到更改。即我有一个带有样式的粗体文本,但是在使用普通文本呈现页面后,只有粗体出现,我能够看到我的意思是延迟的变化。

我怎样才能避免这种延迟?

我做了同样的事情,包括在带有样式标签的 View 顶部使用 css 文件完成的更改,我注意到不存在延迟。

是什么导致了这种延迟,我认为是因为 outputProcess = true。但是停止 outProcess 不允许加载我的 css 文件的解决方法是什么。

我正在加载的这个 css 文件不是新的,它本身已经存在于主题中,我将它包含在上面的部分渲染 View 中的原因是,由于 outputProcess = true,它不会影响,我需要包含它在部分渲染 View 中获得预期的外观和感觉。

我可以通过标记在 View 内编写样式来解决这个问题,但我想这不是解决问题的最佳方法。可能是我遗漏了什么。

感谢任何及时回复。

最佳答案

当使用 output Process = true 时,yii 会像这样自动生成一个样式.. gridview/styles.css

所以这会导致延迟,因为在这个 styles.css 仅呈现我定义的任何应用后,它会导致延迟。

将此部分添加到特定操作可解决问题。

Yii::app()->clientScript->scriptMap['styles.css'] = false;

关于php - yii renderPartial 和 inlclude css with <link> 有延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18820358/

相关文章:

PHP Simple Dom - 在类似于 + CSS 选择器的元素后立即获取元素

php - Codeigniter 结合两个结果

jquery - 查找具有类但类名不同或未知的 html 元素

javascript - 运行 javascript 函数时 CSS 动画停止

javascript - Vue2 : how to get a smooth mouse move?

php - array_unique 函数后的数组作为 JSON 响应中的对象返回

php - 我将如何创建一个登录页面,以便它显示基于生成的代理的自定义信息 "6-digit code"

javascript - 将页面标题保存在变量中,以便在发布后可以访问

javascript - 制作 :after element expand to full width if parent overflows

html - 什么决定了 Firefox 中的滚动条是否有颜色?