因此,我一直试图弄清楚这一点,但似乎无法理解。
我使用的导航由圆圈组成(请参见下面的网站),当用户单击一个圆圈时,会将他/她转发到相应的幻灯片。
当您四处单击时,它有时会一直滑回到窗口的开头(margin-left = 0)。如果一开始没有执行此操作,请单击大约一两秒钟,您最终将看到它。
http://dan.stargroupdev.com/
这是有问题的代码:
$("#footer-slidenav .links a").click(function () {
// Get nav index
var slidenum = $(this).attr("id").slice(3);
// Setup slide selector with string to avoid issues
var slidetext = ".slide:eq(" + slidenum + ")";
slidenum = $(slidetext).offset().left;
console.log("Top: " + slidenum);
var offset2 = 0;
// Find window offset to center slide if screen is bigger than 1000px (size of one slide)
if (($(window).width() - 1000) / 2 > 0) {
offset2 = ($(window).width() - 1000) / 2;
}
// Slide window to slide # that was clicked
$("html:not(:animated), body:not(:animated)").animate({
scrollLeft: slidenum
}, 1000, function () {
console.log("Middle: " + slidenum);
// Callback to center slide and give a nice little animated touch
slidenum = $(slidetext).offset().left;
console.log("Bottom: " + slidenum);
$("html:not(:animated), body:not(:animated)").animate({
scrollLeft: (slidenum - offset2)
}, "fast");
});
return false;
});
我尝试了
$("html:not(:animated), body:not(:animated)")
之类的方法以及其他一些可能的解决方案,但该错误仍然存在。任何建议都是很好的选择,我很乐意招待你们可能有的任何想法。
谢谢。
最佳答案
原来我在另一个JS文件中有一块剩余的代码。对不起,浪费您的时间,这就是为什么它变得混乱了。
不过,感谢您的回答。
关于javascript - 动画滚动非常容易,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6712042/