给元素添加一个class,再定时删除,再定时添加,如此3次,请问有什么巧妙的办法?

为了实现一个闪烁的效果,要给一个元素添加一个class,然后倒计时0.2秒删除这个class,倒计时0.2秒再添加这个class,如此重复多次。完成闪烁后还要弹出一个弹窗。
请教除了嵌套setTimeout,使用jQuery的deferred,还有什么巧妙或者优雅的方式实现吗?

为了兼容大多数PC浏览器不能用CSS3动画,移动端也不能用,因为animationend也有兼容性问题。

阅读 4.5k
5 个回答

定时可以用setInterval啊,虽然尾递归setTimeout时间比较准确

写个css3动画不就可以了

用css3多好 不要搞这么麻烦

@-webkit-keyframes bigAssButtonPulse {
from { background-color: #749a02; -webkit-box-shadow: 0 0 25px #333; }
50% { background-color: #91bd09; -webkit-box-shadow: 0 0 50px #91bd09; }
to { background-color: #749a02; -webkit-box-shadow: 0 0 25px #333; }
}

写个jQuery animate()不就可以了

应该说,大多数主流PC浏览器和移动端浏览器都支持CSS3动画。兼容问题不算是问题,靠前缀解决。

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