修改el-dialog动画导致在有threejs的页面闪动的问题

修改el-dialog动画代码如下:

/* dialog框显示和隐藏的动画效果 改浮现方式从左往右出现 */
@keyframes dialog-fade-in {
  0% {
    transform: translate3d(-100%, 0, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes dialog-fade-out {
  0% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  100% {
    transform: translate3d(100%, 0, 0);
    opacity: 0;
  }
}

现象:

平时用着好好的,突然有一天,在3D场景中使用弹出框,出问题了,闪屏啊。
就是那种从左往右滑到中间突然闪现一下重新滑动。
这……

定位:

1、查看点击事件只触发了一次
2、并没有触发关闭事件
3、:visible.sync="dialogVisible"监控dialogVisible也就只变化了一次变成了true
费解……
4、那我关了动画吧,注释掉以上,诶,好了。
5、然后我就疯狂找规律啥时候会出现闪屏呢,好像是threejs加载了很多动画以后就会出现,如果仅仅加载场景没有各种特效,弹出框是没有闪屏的。
这好像也说得通,因为threejs在不停渲染页面,而弹出框动画也有执行时间也在渲染界面,所以冲突了?
于是乎我修改弹出框的动画时间:
.el-dialog__wrapper {
transition-duration: 3s;
}
果然出现了奇奇怪怪的现象,虽然也不能证明啥。

思考:

element-ui并未对外提供这个动画控制,所以……我不知道了,反正就是冲突了。
注释掉上述代码就行了,和threejs连用的el-dialog还是用默认的动画吧。
哎,记录一下,求大神解答……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值