Javascript 简单jQuery动画示例-从一个div滚动到另一个div

Javascript 简单jQuery动画示例-从一个div滚动到另一个div,javascript,jquery,jquery-animate,slideshow,Javascript,Jquery,Jquery Animate,Slideshow,下面是我想要创建的示例 让我们假设有两个div,每个div包含一些其他HTML/内容(其他div)。我希望在页面加载视图中有一个div,然后在几秒钟后(比如说5秒钟),将第二个div滚动到与第一个div相同的位置,然后无限期地重复该过程,直到用户离开页面 有关页面和元素,请访问。我正试图用一类dynamicPanel设置左侧边栏的动画。这些div中至少会有三个,它们的内容长度几乎相当 我感谢大家的帮助。我是一名非常新的客户端程序员,非常感谢这个社区对新开发人员的尊重。 下面是我刚刚制作的一个简单

下面是我想要创建的示例

让我们假设有两个div,每个div包含一些其他HTML/内容(其他div)。我希望在页面加载视图中有一个div,然后在几秒钟后(比如说5秒钟),将第二个div滚动到与第一个div相同的位置,然后无限期地重复该过程,直到用户离开页面

有关页面和元素,请访问。我正试图用一类dynamicPanel设置左侧边栏的动画。这些div中至少会有三个,它们的内容长度几乎相当

我感谢大家的帮助。我是一名非常新的客户端程序员,非常感谢这个社区对新开发人员的尊重。

下面是我刚刚制作的一个简单的jQuery插件,它将向上滑动到第一个div,并将其放在列表的末尾。我对下面的代码进行了注释以进一步解释,这样您就可以开始使用它,并可以根据自己的需要进行调整,了解jQuery:

// the plugin declaration
$.fn.rotateEach = function ( opts ) {

    // cache the element set
    var $this = this,

        // create some default options
        defaults = {
            delay: 5000
        },

        // pass the defaults to settings with any override options
        settings = $.extend(defaults, opts),

        // repeated rotation function
        rotator = function ( $elems ) {

            // slide up first element in set
            $elems.eq(0).slideUp(500, function(){

                // detach first element
                var $eq0 = $elems.eq(0).detach();

                // append it to wrapper
                $elems.parent().append($eq0);

                // fade it back in
                $eq0.fadeIn();

                // call rotator on reselection of elements
                // since first element was moved to end
                setTimeout(function(){ rotator( $( $elems.selector ) ); },
                           settings.delay);
            });
        };

    // initial rotator call
    setTimeout(function(){ rotator( $this ); }, settings.delay);
};

// invoke plugin
$('.dynPanelContent').rotateEach();
如果您想更改延迟,您可以将其作为选项传入:

$('.dynPanelContent').rotateEach({ delay: 7500 }); // 7.5 seconds
注意:我还移动了
.dynPanelOpener
.dynPanelTitle
中的
.dynPanelContent
,以便它们包含在动画中


你太棒了,你介意教我如何将我自己的参数添加到该插件中吗?我要添加的参数将更改同时显示的元素数量。例如,在动态面板中将有16个元素,但同时显示所有16个元素将形成一个非常长的页面。我想展示四到六个元素,让它们继续以上面的方式滚动,同时简单地展示“数组”中的第一个x。也许你可以在尝试自己实现后创建一个新问题。。。这是周末,我要出去玩!