jQuery+CSS3 制作background-color渐变效果
jQuery中虽然用animate,但是他支持的毕竟有限,比如说就不支持background-color,所以要想起到过渡效果,还得靠CSS3来撑门面啦。
刚开始时候写了个function,然后想想这样一点都不好用,我还得传个obj参数进去好麻烦,后来想到了,何不在jQuery里加个方法,就能和原生函数一样调用了。
1jQuery.prototype.switchBackgroundColor = function(color1, color2, time) {
2 var self = this;
3 self.css('background', color1);
4 setTimeout(function() {
5 self.css('background', color2)
6 }, time);
7}
8
刚开始萌萌哒的我想在setTimeout里this.css(),结果报错,归根结底setTimeout是window.setTimeout的缩写啊(╯‵□′)╯︵┻━┻,于是定义一个self变量,可以再他的下层使用了wwwww。
这样我们就可以使用比如
1$('.whois-status').switchBackgroundColor('yellow', '#fff', 500);
2
这种方法调用了。
当然,要想实现渐变,还需要在CSS里添加transition属性,关于这一点,不多说了。
评论 (0)