中心div水平scolling

时间:2015-04-23 12:21:21

标签: javascript jquery html css

大家好,

我已经构建了这个水平滚动网站,但是当我点击导航栏中的链接时,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();

            });             

提前致谢!

1 个答案:

答案 0 :(得分:1)

scrollLeft应为$($anchor.attr('href')).offset().left + ($(window).width() - $($anchor.attr('href')).width()) * 0.5

plus之后的部分计算窗口宽度,减去元素宽度,并将一半差异添加到scrollLeft,导致目标位于中心。

您应该稍微清理我的示例代码以使其更具可读性,但概念应该是明确的。