【问题标题】:How to fade out an Alert::widget after some seconds?如何在几秒钟后淡出 Alert::widget?
【发布时间】:2018-09-04 07:25:30
【问题描述】:

为了显示警报,我在视图中使用此代码。

<?= Alert::widget() ?>

并且从控制器我使用以下代码设置闪光灯:

Yii::$app->session->setFlash('success', 'Thank you for contacting us.');

现在我想在几秒钟后自动隐藏这个闪光灯,我该怎么做?

【问题讨论】:

  • yii\bootstrapAlertyii\widgets\Alert 是哪个警报小部件?
  • setTimeout(3000, function(){ $(".info").fadeOut("slow"); }); ?如这里:yiiframework.com/wiki/21/how-to-work-with-flash-messages
  • @MuhammadOmerAslam 我正在使用yii\widgets\Alert
  • @DavidWinder 我试过了,但是没用。

标签: php jquery yii2


【解决方案1】:

如果您在布局中包含yii\widgets\Alert 小部件以供您网站的整体使用,则可以使用javascript 方法隐藏或fadeOut() 布局文件顶部的警报。

$js=<<< JS
     $(".alert").animate({opacity: 1.0}, 3000).fadeOut("slow");
JS;

$this->registerJs($js, yii\web\View::POS_READY);

您可以相应地调整超时时间。

【讨论】:

  • 太棒了!它正在工作,但我没有得到你的代码,请你解释一下吗?
  • 我已经更新了代码,使其更具可读性,我所做的只是通过将fadeOut() 应用于.alert 元素来设置fadeOut() 的延迟,这显然是我们的警报,它会在 3 秒后淡出警报消息@BilalSaqib
猜你喜欢
  • 1970-01-01
  • 2011-12-30
  • 2021-08-30
  • 1970-01-01
  • 2015-09-04
  • 1970-01-01
  • 1970-01-01
  • 2015-12-04
  • 2015-08-20
相关资源
最近更新 更多