延迟并设置背景动画
Delay and animate background
我想让背景图像消失。它有效。但当我试图延迟它或设置它的动画时,它失败了。你猜怎么了?怎么做好?
$(function(){
$("#foto1").click(function() {
$("#foto1").delay(1000).animate.css({"background":"none"},2000);
});
})
http://jsfiddle.net/78W3u/
像这样尝试
$(document).ready(function(){
$("#foto1").click(function() {
$(this).delay(1000).fadeOut(20000, function(){
$("#foto1").css('background', 'none') //<=== this remove the background after the animation stops
});
});
})
http://jsfiddle.net/78W3u/5/
这将淡出图像:http://jsfiddle.net/2MQeC/
$(function(){
$("#foto1").click(function() {
$("#foto1").fadeOut(2000);
});
})
--编辑--
这将独立于图像设置背景动画:http://jsfiddle.net/2MQeC/1/
#foto1 {
background: black;
-webkit-transition: background 1.5s ease; /* Saf3.2+, Chrome */
-moz-transition: background 1.5s ease; /* FF4+ */
-ms-transition: background 1.5s ease; /* IE10 */
-o-transition: background 1.5s ease; /* Opera 10.5+ */
transition: background 1.5s ease;
}
$(function(){
$("#foto1").click(function(){
$this = $(this);
setTimeout(function(){
$this.css({
background: 'green'
});
}, 1000); // delay
});
});
正如您所看到的,这依赖于背景动画的CSS3转换。
一个更好的跨浏览器解决方案是使用jQuery .animate()
函数。但是您不能像.css()
那样修改那么多属性。
jQuery .animate()
文档摘录:
大多数非数字属性不能使用基本属性设置动画jQuery功能(例如,width、height或left可以是动画,但背景颜色不能,除非使用jQuery.Color()插件)。
但是,您可以更改标记,并将图像和背景分离为两个叠加的div。这可以简化您尝试做的事情。
相关文章:
- CSS动画背景图像的过渡越来越暗
- jQuery动画背景大小属性
- 动画背景颜色,脉冲效果
- Jquery 动画背景颜色不起作用
- 如何在 jQuery 中动画背景图像更改
- 动画背景没有固定
- 我怎么能得到这样的动画背景效果呢
- 动画背景与画布
- 我想在javascript上设置动画背景的大小和位置
- 使用Bootstrap 3正确定位在动画背景之上获取网页内容
- 使用jquery动画背景颜色
- 平滑动画背景颜色不透明度后,基础图像加载
- jQuery动画背景颜色滑动
- jQuery.动画背景位置
- 如何在smartprogress中创建动画背景.使用js,css,html5
- HTML5画布-制作一个动画背景与下降的黄金薄片
- JQuery动画背景位置跨浏览器
- 我怎样才能制作一个“;循环一次”;在每次刷新/加载页面时播放GIF动画背景
- 如何淡入淡出动画背景图像(全尺寸)
- jQuery动画背景颜色.删除Math.random