想要实现的效果是,点击按钮后,逐步改变指定元素的属性。
使用了jquery的delay 延时方法,但是不起作用。
测试的失败的写法如下:
html部分不变
jquery添加元素
水果
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
如果delay()下一项不是效果动画,则它不会被加入效果队列中,因此该函数不会对它进行延迟调用。
另外jQuery的animate不支持background-color的颜色渐变效果
我觉得使用JS原生的setTimeout就可以了
第一种/第三种不可行,
delay后面的操作需要是一个异步的操作,所以直接设置css不可行。第三种方法delay包含两个参数,第一个是时间,第二个是规定队列的名称,所以你的用法是错误的。第二种方法是可行的,但是
jquery不支持background的animatie(详细介绍),如果你换个属性,如'height'就能生效了。delay()这个函数是对应Animation动作的,因此不用乱用。
如果只是延时使用setTimeout即可;要是渐变,可使用css 3 的transition属性。