szukałem tej samej odpowiedzi i nie mogłem znaleźć niczego, co zrobił dokładnie to, co chciałem, więc stworzyłem własną rękę i napisałem go tutaj:
http://seekieran.com/2011/03/jquery-scrolling-box/
Demo pracy: http://jsbin.com/azoji3
Oto ważny kod:
function ScrollDown(){
//var topVal = $('.up').parents(".container").find(".content").css("top").replace(/[^-\d\.]/g, '');
var topVal = $(".content").css("top").replace(/[^-\d\.]/g, '');
topVal = parseInt(topVal);
console.log($(".content").height()+ " " + topVal);
if(Math.abs(topVal) < ($(".content").height() - $(".container").height() + 60)){ //This is to limit the bottom of the scrolling - add extra to compensate for issues
$('.up').parents(".container").find(".content").stop().animate({"top":topVal - 20 + 'px'},'slow');
if (mouseisdown)
setTimeout(ScrollDown, 400);
}
Recursion aby tak się stało:
$('.dn').mousedown(function(event) {
mouseisdown = true;
ScrollDown();
}).mouseup(function(event) {
mouseisdown = false;
});
Podziękowania dla Jonathana Sampsona za wprowadzenie kodu, ale początkowo nie działał, więc mocno go zmodyfikowałem.Wszelkie sugestie dotyczące jej ulepszenia byłyby wspaniałe tutaj, zarówno w komentarzach, jak i komentarzach na blogu.
Szczególnie wysokości dynamicznych byłoby dobre. Też potrzebuję tego. – Kezzer
Dzięki za opinię. Chciałbym użyć wtyczki ScrollTo jQuery, ale nie mogę go uruchomić. Brakuje prostego przykładu - to wszystko, czego potrzebuję! –