所以我试着把手指放在原因上,它开始让我疯狂。
今天早上,我在我的网站http://followworks.com的右侧边栏为我的客户徽标添加了一个jquery滚动条。
它在Firefox中运行得很完美......当然!
但Safari和Chrome剪切了第一张图片,而左侧按钮甚至无法使用???
这是我在.js文件中的代码
var totalSlides = 14;
var currentSlide = 1;
var contentSlides = "";
$(".clientLeftTab").click(showPreviousSlide);
$(".clientRightTab").click(showNextSlide);
var totalWidth = 0;
contentSlides = $(".slideshow-content");
contentSlides.each(function(i){
totalWidth += this.clientWidth; totalSlides++; });
$("#slideshow-holder").width(totalWidth);
$("#slideshow-scroller").attr({scrollLeft: 0});
function showPreviousSlide(e) {
currentSlide--; updateContentHolder();
}
function showNextSlide(e){
currentSlide++; updateContentHolder();
}
function updateContentHolder(e){
var scrollAmount = 0;
contentSlides.each(function(i){
if(currentSlide - 1 > i) { scrollAmount += this.clientWidth; }
});
$("#slideshow-scroller").animate({scrollLeft: scrollAmount}, 300);
}
此外,我的另一个问题是,当用户点击Chrome和Safari中的链接时,他们会变成白色......我已经检查了我的.css文件http://followworks.com/css/new_style.css,并且没有语法可以将链接设为白色:主动还是:焦点?奇怪......我知道别人有这个问题......我打赌容易解决! : - )
请让我知道我的.js代码有什么问题。
答案 0 :(得分:0)
尝试使用以下语法替换function functionname(args)
:var functionname = function(args)
- 这可确保在右侧闭包中定义函数。
实际上,在这种情况下,您希望将函数定义移到each
代码之外,因为它们将在each
内可用,同时更具内存效率。