user3780007
user3780007

Reputation: 1

scrollTo not scrolling to the start of the element

I tried to implement the scrollTo funcion but the problem is that when i scroll i want the element that i scrolled to at the topof the screen not in the middle or somewhere else.

JsFiddle

here is the js funcion

 $(document).ready(function () {
 $(".scroll").click(function (event) {
     $('html,body').animate({
         scrollTop: $("#footer").offset().top
     }, 500);
 });

});

Upvotes: 0

Views: 657

Answers (2)

user3310334
user3310334

Reputation:

It is because your page isn't tall enough. To make a javascript function that automatically makes the page high enough (no matter what is in it) do:

$("body").height("100%");
$("html").height(($("body").height()) + 500);

see: http://jsfiddle.net/ZNV7G/1/

If you want to be extra sure you can replace the + 500 with * 2, but that will be a bit excessive in smaller documents.

Upvotes: 0

Lucas Trzesniewski
Lucas Trzesniewski

Reputation: 51330

Your problem here is that there is not enough space at the bottom of the screen to scoll so that the targets ends at the top. The scrollbar is fully at the bottom.

Add a lot of whitespace at the end of the page, this will give more room for scrolling. When you do this, your code works just fine.

Upvotes: 1

Related Questions