【问题标题】:Need to fadeIn each circle 1 after the other with jQuery需要用jQuery逐个淡入每个圆圈1
【发布时间】:2012-03-10 05:53:12
【问题描述】:

这是对昨天回答的上一个问题的扩展,可以在这里找到:Expanding circles with CSS3 animations

但是现在客户要求可以让每个圆圈和文字一个接一个地淡入,但保持不断增长的动画。

我正在使用 CSS3 过渡来扩大圆圈,但我现在认为我现在需要使用 jQuery 来制作动画?

你可以在这里看到我目前拥有的:http://thomasbritton.co.uk/projects/ebrd/

这是我当前的js:

setTimeout(function() {
    $('.circle').addClass('open');
}, 100);

if ($.browser.msie || $.browser.version < 9) {
    var circle = $('div.circle');
    $(circle).animate({
        height: 168,
        width: 168,
        left: '0',
        top: '0'
    }, 1000);
}

这是我当前处理 CSS 增长动画的 CSS:

.circle {
border-radius: 100%;
font-family: 'Helvetica', Arial, sans-serif;
font-size: 14px;
height: 0px;
left: 84px;
-moz-transition-duration: 2s;
-moz-transition-property: all;
-moz-transition-timing-function: ease-in-out;
-webkit-transition-duration: 2s;
-webkit-transition-property: all;
-webkit-transition-timing-function: ease-in-out;
transition-duration: 2s;
transition-property: all;
transition-timing-function: ease-in-out;
text-align: center;
overflow: hidden;
position: absolute;
top: 84px;
width: 0px;
}

.circle.open {
top: 0px;
left: 0px;
width: 168px;
height: 168px;
}

有人可以帮忙吗?

【问题讨论】:

    标签: jquery animation css jquery-animate css-transitions


    【解决方案1】:

    试试这个你可以在这里看到它http://jsfiddle.net/ME5fm/2/:

    $('.circle').each(function(i){
        var time = 500 * (i + 1);
        setTimeout(function(){
            $('.circle').eq(i).addClass('open').animate({opacity: '1'}, i);
        }, time);
    });
    

    为此你还需要添加

    的css

    .circle{opacity: 0;}

    【讨论】:

    • 嗨,当我尝试这个时,我得到一个 js 错误:'circle.length 不是一个函数'
    • 现在已经对错误进行了排序,但似乎没有发生以前没有发生的事情。他们都只是扩大。
    • 哇,就快到了!您知道如何添加它以使每个项目同时淡入并同时增长吗?
    • 我添加了fadeIn();在 addClass('open') 之后,似乎工作。有更好的方法吗?
    • 你先生是个传奇!非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-19
    • 2018-12-15
    • 1970-01-01
    • 1970-01-01
    • 2012-07-11
    相关资源
    最近更新 更多