2013-01-25 11 views
5

Menüde Hakkında veya İrtibat üzerine tıkladıktan sonra div (ör.: #about, #contact) öğesine nasıl kaydırılır?Menüde Hakkında veya İrtibat üzerine tıkladıktan sonra nasıl kaydırılır?

<div class="masthead"> 
    <ul class="nav nav-pills pull-right"> 
     <li class="active"><a href="#">Home</a></li> 
     <li><a href="#">About</a></li> 
     <li><a href="#">Contact</a></li> 
    </ul> 
    <h3 class="muted">Name site</h3> 
</div> 
+0

Bak de http://stackoverflow.com/questions/5284814/jquery-scroll-to- tarafından yerine ve http://stackoverflow.com/questions/3432656/scroll-to-a-div-using-jquery – Yoggi

+0

http: //stackoverflow.com/questions/14412157/how-to-scroll-down-the-page-to-view-a-div-in-a-link-clicked/14412200#14412200 –

cevap

8

Sizin html:

<div class="masthead"> 
    <ul class="nav nav-pills pull-right"> 
     <li class="active"><a href="#">Home</a></li> 
     <li><a href="#about">About</a></li> 
     <li><a href="#contact">Contact</a></li> 
    </ul> 
    <h3 class="muted">Name site</h3> 
</div> 
<div id="about">about</div> 
<div id="contact">contact</div> 
Sen aracılığıyla CSS ile bunu yapabilir

<a href="#tips">Visit the Useful Tips Section</a> 

Kendi javascript'leriniz:

Eğer animate kullanmak istiyorsanız
$('ul.nav').find('a').click(function(){ 
    var $href = $(this).attr('href'); 
    var $anchor = $('#'+$href).offset(); 
    window.scrollTo($anchor.left,$anchor.top); 
    return false; 
}); 

,

window.scrollTo($anchor.left,$anchor.top); 

$('body').animate({ scrollTop: $anchor.top }); 
+0

Bu koda animate() nasıl eklenir? – vavelde

+1

Yayını – JohnJohnGa

+0

ile düzenledim JS konsolumda bağlantı etiketine tıkladıktan sonra hata mesajı alıyorum - Hata: Sözdizimi hatası, tanınmayan ifade: ## details – plutonium1991

4

çalışmak birkaç güzel işlevlere sahiptir. O id (veya o name özelliği olan bir çapa) sahip bir elemana karma, bu olacak otomatik kaydırma kullanarak

<div class="masthead"> 
    <ul class="nav nav-pills pull-right"> 
     <li class="active"><a href="#">Home</a></li> 
     <li><a href="#About">About</a></li> 
     <li><a href="#Contact">Contact</a></li> 
    </ul> 
    <h3 class="muted">Name site</h3> 
    </div> 


<div id="About">Here's my about</div> 

... 

<div id="Contact">Here's my contact</div> 

. Sorunsuz bir şekilde kaydırılmasını istiyorsanız, kaydırma efektini jquery gibi bir javascript kütüphanesiyle geliştirebilirsiniz. Bu soruya bakın: How to scroll HTML page to given anchor using jQuery or Javascript?

Sen aracılığıyla HTML ile kendisine atlayabilir
+0

Denedim. Bu benim için çalışmadı. Href = "# id" sağlama ve bu kimlikleri olan divlara sahip olmaktan başka bir şey var mı? –

+0

@SaurabhTiwari Kimlik benzersiz olmalı. Ve öğenin, yükleme sırasında (yükte otomatik olarak kaydırılmasını istiyorsanız) veya bağlantıyı tıklattığınızda, sayfada bulunması gerekir. –

+0

evet, tüm bunları yerinde yaşıyorum. Uygulamamda Angular ve yönlendirme kullandığımı söylemeyi kaçırmamıza rağmen. Eğer yapabiliyorsanız [buraya] bir bakın (https://stackoverflow.com/questions/44307824/unable-to-scroll-to-a-div-element-using-hash-in-angular-app). –

İlgili konular