首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JQuery Fade Ticker整洁整洁

JQuery Fade Ticker整洁整洁
EN

Stack Overflow用户
提问于 2011-03-24 22:31:17
回答 2查看 944关注 0票数 0

用我自己的报价器做实验,已经用完了JQuery知识。这些元素应该会淡出,然后下一个元素会淡入。目前,第一个元素逐渐淡出,而第二个和第三个元素一起淡入,它们没有循环。显然,我遗漏了一些东西。

代码语言:javascript
运行
复制
<script type="text/javascript">
var elem1 = $('#fader').children();
    $(elem1).hide();
    $(elem1).first().fadeIn(2000,function(){
        $(elem1).delay(4000);

        $(elem1).fadeOut(2000, function(){
            $(elem1).next().fadeIn(2000);

            });
            }); </script>

有什么想法吗?

太棒了

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-25 00:50:44

嗯,我做了一个简单的修补程序,可以滚动所有的值并停止。也许这就是你想要的,或者,至少可以帮助你建立你自己的。;)这是它的HTML代码:

代码语言:javascript
运行
复制
<div id="fader" style="width:100px; height:100px; background-color:blue;">
    <p>aaaaaaaaaaaa</p>
    <p>bbbbbbbbbbbb</p>
    <p>cccccccccccc</p>
    <p style="display:none;">dddddddddddd</p>
    <p style="display:none;">eeeeeeeeeeee</p>
    <p style="display:none;">ffffffffffff</p>
    <p style="display:none;">gggggggggggg</p>
</div>

脚本本身:

代码语言:javascript
运行
复制
<script type="text/javascript">
$(document).ready(function()
{
    var timer = window.setInterval(function()
    {
        var elem1 = $('#fader').children(':visible:first');
        var elem2 = $('#fader').children(':visible:last');

        if( !$(elem2).next().is(':last') )
            clearInterval( timer );
        else
        {
            $(elem1).fadeOut(1500, function()
            {
                $(elem2).next().fadeIn(1500);
            });
        }
    }, 3000);
});
</script>

祝你好运!;

票数 0
EN

Stack Overflow用户

发布于 2011-03-24 22:38:12

我想是你的选择器。$(elem1)引用的是$('#fader')的所有子元素,因此$(elem1).next()最终会引用所有可能的"next's",在本例中,第一个和第二个元素都有"next's",分别是第二个和第三个元素。

您要做的是以某种方式跟踪哪个元素是当前显示的元素,然后在时间到时,淡出该元素,然后淡入该元素中的下一个元素。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5420745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档