改变Div's CSS在一定的时间
Change A Div's CSS For A Certain Time
$("#team").css("background-color","blue");
我想把id:team的背景色变成蓝色,但是我只想把这个颜色变成4秒。
我该怎么做?
我已经谷歌了,但我找不到任何关于改变css给定的时间框架。
另外,从/到之前的设置淡出/入将是一个很好的触摸。
如果你想让它在4秒内呈现蓝色,你可以这样做:
var element = $( "#team" );
var oldColor = element.css( "background-color" );
element.animate( { "background-color": "blue" } )
.delay( 4000 )
.animate( { "background-color": oldColor } );
.animate()
需要jQuery UI,否则可以直接使用.css()
你必须使用计时器功能:
setTimeout(function() {
$('#team').css('background-color', 'whatever');
}, 4000);
第二个参数是以毫秒为单位的计数,表示在调用第一个参数(函数)之前您希望等待多长时间。
没有内置的功能说"回到以前的样子";您必须在自己的代码中记住旧的值。
如果你不想使用jQuery UI插件(可能是因为它的大小),那么你可以手动做动画。
请看下面在jsFiddle中工作的代码。
function animblue(selector, from, to, step) {
var
target = $('#target'),
color = from,
next;
next = function () {
var hex = (Math.floor(color) < 16 ? '0' : '') + Math.floor(color).toString(16);
target.css('background-color', '#' + hex + hex + 'ff');
color += step;
if (!((color < from && color < to) || (color > from && color > to))) {
setTimeout(next, 10);
}
};
next();
}
$('#action').on('click', function () {
animblue('#target', 255, 0, -255 / 16);
window.setTimeout(function () {
animblue('#target', 0, 255, 255 / 16);
}, 4000);
});
相关文章:
- 使用jquery在特定的时间间隔自动切换/动画css类
- Webkit-css随持续时间变化
- jquery加载时间和里面的css样式
- 我们怎么知道消除HTML/JS/CSS文件中的空白可以缩短页面加载时间呢
- 禁用CSS链接的时间
- CSS与Jquery、滑块、动画、灯箱..加载时间与功能
- 淡入,然后使用css过渡淡出一段时间
- 在条件中的几个时间行中设置自定义css效果后,从Jquery时间选择器显示时间
- 如何为未加载、加载时间过长和被阻止的css文件编写回退
- 无法让悬停事件使用 jQuery UI 持续时间参数或 CSS 处理目标元素的同级元素
- 输入视图端口时更改时间轴css
- 添加css转换时间以使用javascript切换类
- JQuery css() 效果逆转,除非我事先调用 alert('时间浪费')
- 删除不需要的javascript和css是否包括减轻网页加载时间
- 拆分脚本/CSS 是否会产生更快的执行/绘制时间
- 在页面加载时禁用 CSS 动画,但每隔一段时间工作一次
- 持续时间为零的css转换是否仍然是硬件加速的
- 如何使用HTML、CSS和JavaScript制作时间线
- CSS 时间轴滚动条
- 无法使用 jQuery 更改正文上的“动画持续时间”CSS