vue怎么实现多个div依次背景闪烁,每个div闪烁两次

clipboard.png
如果,我现在想根据请求返回的结果(请求也是通过定时器定时请求的),来使这5个div中的某几个依次闪烁,每个闪烁几次,然后恢复正常,请问大神有啥好的办法没?
目前我是安装来jquery来实现的,但jquery太大了而且领导也不让通过cdn引入

阅读 6.2k
5 个回答

闪烁几次 恢复正常 那这种情况就应该用js实现。
animate函数应该是你想要的,接收两个参数,一个样式列表,一个完成动画的时间。
比如2秒从1000px高度变为500px:

el.animate([
    // 闪烁样式列表
    { height: '1000px' },
    { height: '500px' }
], 2 * 1000)

多个div的话定时器设置一下轮到哪个div闪烁即可。

用 css visibility?

动态绑定class就行了,为什么要用jQuery,用了Vue就可以抛弃jQuery了。

let ele = this.$refs.equiplist.childNodes;

    let i = 0;
    setInterval(function(){
        
        if(i-1>=0){
            ele[i-1].className="";
        }else{
            ele[ele.length-1].className="";
        }
        ele[i].className="active";
        i++;
        if(i==ele.length){
            i=0
        }
    },1000);

这段代码只能实现,闪烁消失都花了1秒,我希望的是前一个闪烁后下一个直接闪烁而不是等前面闪烁消失后一秒在亮

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题