0

我正在使用这样的递归函数在我的页面上的 div 上创建连续的脉冲效果,并且它正在工作。但是,它看起来像是fadeOut()从文档流中删除了 div 元素,因此我页面上其他一些元素的位置发生了变化。是否有替代此功能的替代方案,可提供与重复脉冲效果相同的功能?

代码

(function pulse(){
            if(needStop) {
                needStop = false;
                return;
            }
        $('#player1,#score1').delay(200).fadeOut('slow').delay(50).fadeIn('slow',pulse);
    })();
4

3 回答 3

1

如果你不介意使用插件,这里有一个适合 jQuery 的插件:

http://james.padolsey.com/javascript/simple-pulse-plugin-for-jquery/

更新链接:

http://jsoverson.github.com/jquery.pulse.js/

于 2013-04-03T10:16:25.233 回答
1

尝试为它的不透明度设置动画。

$('#player1,#score1').delay(200).animate({
    opacity: 0
}, 'slow', function(){
    setTimeout(function(){
        $('#player1,#score1').delay(50).animate({
            opacity: 0
        }, 'slow', pulse );
);

http://api.jquery.com/animate/

https://developer.mozilla.org/en/docs/DOM/window.setTimeout

于 2013-04-03T10:17:07.513 回答
1

您也可以使用 CSS,也许代码更少,这个来源很棒: http ://daneden.me/animate/build/

只需添加和删除 css 类即可应用所有这些效果

于 2013-04-03T10:18:07.163 回答