2010-11-10 20 views

cevap

332

Bunu, scrollTop ayarlayabilirsiniz:

$('html, body').animate({ scrollTop: 0 }, 'fast'); 
+0

iyi bir ... Ben Bunu gerçekleştirmek için önce jQuery için scrollTo eklentisi kullandım - kodla ilgili kod biraz kurtarabilirdim ... dersi için teşekkürler; -) –

+3

Firefox 30 ve Chrome 36'da çalışmaz. –

+0

Basit ve alçakgönüllü :) –

103

animasyon olmadan, kullanabilirsiniz düz JS:

$('html,body').scrollTop(0); 

Yoksa yerine üst bir çırpıda küçük animasyonu istiyorsanız :

scroll(0,0) 

Animasyonla, Nick'in yanıtını kontrol edin.

+4

Bu tüm tarayıcılarda destekleniyor mu? – Pacerier

+1

'scroll' CSSOM standardında iken scrollTo' orijinal olarak DOM Level 0'da tanımlanmış ve herhangi bir standardın parçası değil. Ancak, CSSOM, geriye doğru uyumluluk için 'scrollTo' içerir. –

+3

Sanırım "kaydırma" yaygın olarak destekleniyor. Bkz. Http://stackoverflow.com/q/1925671/41906 –

13

Javascript olmadan yapabilir ve sadece bağlantı etiketlerini kullanabilirsiniz? Sonra bu js ücretsiz erişilebilir olacaktır.

modacıları kullanırken, js özgürlüğüne önem vermediğinizi varsayarım. ;)

+1

Bağlantı etiketlerini kullanmak karma tabanlı gezinmeyi kesintiye uğratır. –

24

jQuery UI iletişim kutusu kullanıyorsanız, pencerede sabitlenmiş olan konumla görünecek şekilde modun stilini çizebilirsiniz, böylece görünümün dışına çıkmaz, kaydırma gereksinimini ortadan kaldırmaz. Aksi takdirde, hile yapmalıdır.

.

1

jQuery UI iletişim kutusunu kullanıyorsanız, pencerede sabitlenmiş olan konumla görünecek şekilde modun stilini çizebilirsiniz, böylece görünümün dışına çıkmaz, kaydırma gereksinimini ortadan kaldırmaz. Diğer

0

// When the user scrolls down 20px from the top of the document, show the button 
 
window.onscroll = function() {scrollFunction()}; 
 

 
function scrollFunction() { 
 
    if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) { 
 
     document.getElementById("myBtn").style.display = "block"; 
 
    } else { 
 
     document.getElementById("myBtn").style.display = "none"; 
 
    } 
 
    
 
} 
 

 
// When the user clicks on the button, scroll to the top of the document 
 
function topFunction() { 
 
    
 
    $('html, body').animate({scrollTop:0}, 'slow'); 
 
}
body { 
 
    font-family: Arial, Helvetica, sans-serif; 
 
    font-size: 20px; 
 
} 
 

 
#myBtn { 
 
    display: none; 
 
    position: fixed; 
 
    bottom: 20px; 
 
    right: 30px; 
 
    z-index: 99; 
 
    font-size: 18px; 
 
    border: none; 
 
    outline: none; 
 
    background-color: red; 
 
    color: white; 
 
    cursor: pointer; 
 
    padding: 15px; 
 
    border-radius: 4px; 
 
} 
 

 
#myBtn:hover { 
 
    background-color: #555; 
 
}
<script src="https://code.jquery.com/jquery-1.10.2.js"></script> 
 

 
<button onclick="topFunction()" id="myBtn" title="Go to top">Top</button> 
 

 
<div style="background-color:black;color:white;padding:30px">Scroll Down</div> 
 
<div style="background-color:lightgrey;padding:30px 30px 2500px">This example demonstrates how to create a "scroll to top" button that becomes visible when the user starts to scroll the page.</div>

İlgili konular