我已经实现了水平行情自动收录器,但是它应该循环遍历<li>
并且永不停止。似乎我在某处出错,在<li>
的末尾,它在右侧留出了一个黑色空间,这不应该发生,应该继续循环。我在这里做错了什么,这使它不能无限运行?
http://jsfiddle.net/UzrM5/
/* Horizontal Ticker */
jQuery.fn.racScroll = function(settings) {
settings = jQuery.extend({
travelocity: 0.07
}, settings);
return this.each(function(){
var $strip = jQuery(this);
$strip.addClass("newsticker")
var stripWidth = 1;
$strip.find("li").each(function(i){
stripWidth += jQuery(this, i).outerWidth(true); // thanks to Michael Haszprunar and Fabien Volpi
});
var $mask = $strip.wrap("<div class='mask'></div>");
var $tickercontainer = $strip.parent().wrap("<div class='tickercontainer'></div>");
var containerWidth = $strip.parent().parent().width(); //a.k.a. 'mask' width
$strip.width(stripWidth);
var totalTravel = stripWidth+containerWidth;
var defTiming = totalTravel/settings.travelocity; // thanks to Scott Waye
function scrollnews(spazio, tempo){
$strip.animate({left: '-='+ spazio}, tempo, "linear", function(){$strip.css("left", containerWidth); scrollnews(totalTravel, defTiming);});
}
scrollnews(totalTravel, defTiming);
$strip.hover(function(){
jQuery(this).stop();
},
function(){
var offset = jQuery(this).offset();
var residualSpace = offset.left + stripWidth;
var residualTime = residualSpace/settings.travelocity;
scrollnews(residualSpace, residualTime);
});
});
};
jQuery(function ($) {
$("ul#feed").racScroll({travelocity: 0.05});
});
最佳答案
这是由以下CSS引起的:
margin-right: -15px;
关于javascript - 水平行情指示器过早切断?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19260766/