我正在尝试在主页上实现单页滑块,我让它在FF和IE中工作但不在Safari或Chrome中。
这是我用于滑块的代码..
//sliding content
$("#main-nav a").click(function(){
var target = $(this).attr("href");
$("html, body").stop().animate({
scrollLeft: $(target).offset().left,
}, 1200);
});
答案 0 :(得分:1)
知道了!
使用position
代替offset
:
scrollLeft: $(target).position().left
并删除逗号“,
”,因为您没有列出任何其他属性。
$("#main-nav a").click(function(){
var target = $(this).attr("href");
$("html, body").stop(1).animate({ // used : .stop(1) (same as .stop(true) )
scrollLeft: $(target).position().left // position instead of offset
}, 1200);
});
另一个建议:
正如我所看到的,在快速点击链接时 - 所有动画都会被缓存,导致等待到达正确位置的烦人。删除(清除)动画队列的一个好方法是使用.stop(1)
试试吧!