我做了以下小提琴作为例子: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);