大家好,
我已经构建了这个水平滚动网站,但是当我点击导航栏中的链接时,div显示在屏幕右侧而不是中心。有谁知道如何解决这个问题?
这是我使用的jquery代码:
$(function() {
$('.fixed-nav-bar li, .fixed-nav-bar a').bind('click',function(event){
var $anchor = $(this);
$('html, body').stop().animate({
scrollLeft: $($anchor.attr('href')).offset().left
}, 1500,'easeInOutExpo');
$('html, body').stop().animate({
scrollLeft: $($anchor.attr('href')).offset().left
}, 1000);
event.preventDefault();
});
提前致谢!
答案 0 :(得分:1)
scrollLeft
应为$($anchor.attr('href')).offset().left + ($(window).width() - $($anchor.attr('href')).width()) * 0.5
plus之后的部分计算窗口宽度,减去元素宽度,并将一半差异添加到scrollLeft,导致目标位于中心。
您应该稍微清理我的示例代码以使其更具可读性,但概念应该是明确的。