jQuery的delay()函数使用多次并没有出现预想的动态结果

$(".section2 #eye").show().delay(5000).hide().delay(2000).show();

#eye是一个图片,但上面的句子在浏览器中并没有出现预想的眨眼的效果(出现,消失,出现),而是直接出现。如果句子的末尾时hide()则直接消失了。应该怎么修改?

阅读 3.4k
2 个回答

这里的问题是,delay是默认用于延迟动画效果的,非动画效果会无效。所以fadeIn这些函数都可以用delay延迟,而hide不行。

不过也并非完全不行,hideshow可以作为动画效果使用,只需要增加一个参数。

$(".section2 #eye").show(0).delay(5000).hide(0).delay(2000).show(0);

用 setTimeout 吧

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