颠倒垂直新闻自动收报机的方向

时间:2012-11-09 21:41:26

标签: jquery ticker news-ticker

我做了以下小提琴作为例子:http://jsfiddle.net/GR7pg/但需要它向下移动而不是向上移动。

基本上发生的事情是我将这一切都做了好几周,然后当我交付给客户时,他们现在希望股票代码向下移动而不是向上移动。

我能够让顶部物品向下移动然后消失,但其余物品仍然向上移动。更熟悉jquery的人可以轻易改变这一点我希望吗?但是我尝试了各种各样的调整,导致了奇怪的行为。

任何帮助非常感谢!感谢

(function ($) {
    $.fn.extend({
        vscroller: function (options) {
            var settings = $.extend({ speed: 1000, stay: 4000, newsfeed: '', cache: true }, options);

        return this.each(function () {
            var interval = null;
            var mouseIn = false;
            var totalElements;
            var isScrolling = false;
            var h;
            var t;
            var wrapper = $('.news-wrapper');
                    var newsContents = $('.news-contents');

                    var i = 0;
                    totalElements = $.find('.news').length;

                    h = parseFloat($('.news:eq(0)').outerHeight());
                    $('.news', wrapper).each(function () {
                        $(this).css({ top: i++ * h });
                    });
                    t = (totalElements - 1) * h;
                    newsContents.mouseenter(function () {
                        mouseIn = true;
                        if (!isScrolling) {
                            $('.news').stop(true, false);
                            clearTimeout(interval);
                        }
                    });
                    newsContents.mouseleave(function () {
                        mouseIn = false;
                        interval = setTimeout(scroll, settings.stay);
                    });
                    interval = setTimeout(scroll, 1);

            function scroll() {
                if (!mouseIn && !isScrolling) {
                    isScrolling = true;
                    $('.news:eq(0)').stop(true, false).animate({ top: -h }, settings.speed, function () {

                        clearTimeout(interval);
                        var current = $('.news:eq(0)').clone(true);
                        current.css({ top: t });
                        $('.news-contents').append(current);
                        $('.news:eq(0)').remove();
                        isScrolling = false;
                        interval = setTimeout(scroll, settings.stay);

                    });
                    $('.news:gt(0)').stop(true, false).animate({ top: '-=' + h }, settings.speed);
                }
            }

        });
    }
});
})(jQuery);

1 个答案:

答案 0 :(得分:3)

它主要包括将一些top更改为bottom并将增量更改为减量等。

这应该http://jsfiddle.net/GR7pg/16/