2013-05-30 71 views
1

我正在構建單頁網站。我有它的常見網站的東西,如:服務,投資組合,聯繫人,博客等如何在html上滾動到左側?

如果有人點擊'服務','投資組合'和'聯繫'的導航菜單滾動到用戶想要的項目。通常這是上下滾動,所以沒有問題。

我的想法是,當用戶想要去博客,它滾動到右側或推動從右到左的博客推動效果。知道我有一些工作。問題是,當我在最後一部分,即聯繫人時,這是在頁面的底部。如果我想要轉到博客,它會滾動到頂部,然後向右滾動以查看博客。

我假裝將該滾動移除到頂部,並且只是製作一個正確的滾動並從頂部看到博客部分。

有關如何處理這個問題的任何想法?或者,有更好的獨立的HTML文件?

編輯從博客

http://jsfiddle.net/VS9dS/20/

滾動到任何部分和/或從任何部分上下移動。從任何部分的博客

$('html, body').animate({scrollLeft: -$(sectionName).offset().left}, "slow"); 
$('html, body').animate({scrollTop: $(sectionName).offset().top}, "slow"); 

滾動:

$('html, body').animate({scrollTop: $(sectionName).offset().top}, "slow");}; 
$('html, body').animate({scrollLeft: $(sectionName).offset().left}, "slow"); 

我沒有爲缺乏時間增加多少代碼。現在正在處理我的代碼,如果我在聯繫人部分,然後點擊博客聯繫人滾動到頂部,然後滾動到博客部分,博客部分看起來像一個完全不同的HTML。 我想要做的是,如果我在聯繫部分和clic到博客只是做一個左側滾動並顯示博客的頂部,並以相同的方式,如果我在服務,家

+3

你能發佈您的代碼(JavaScript的+標記)?或者更好的是,在jsFiddle中創建一個示例 – cfs

+0

http://api.jquery.com/scrollLeft/ –

+0

我正在使用jquery動畫製作scrollTop:section.offset.top –

回答

0

如果我把你的權利,你只是想第一動畫的一件事,然後其他的,你可以做這樣的事情:

$('html, body').animate({ 
    scrollTop: $(sectionName).offset().top 
}, "slow", function() { 
    $('html, body').animate({ 
     scrollLeft: $(sectionName).offset().left 
    }, "slow"); 
}); 

...或者我可以再試一次,你想動畫滾動到滾動到頂部之後的權利。然後,你可以這樣做:

$('a[href=#blog]').click(function() { 
    $('html, body').animate({ 
     scrollTop: $('#home').offset().top 
    }, "slow", function() { 
     $('html, body').animate({ 
      left: '-=200px' 
     }, "slow",'linear'); //looks better I guess 
    }); 
}); 

CSS:

body { 
    position: relative; 
} 

小提琴:http://jsfiddle.net/Matze/eRNde/

http://api.jquery.com/animate/#basic-usage

相關問題