I would style a link to look like a button, because that way there is a no-js fallback.
So this is how you could animate the jump using jquery. No-js fallback is a normal jump without animation.
Original example:
jsfiddle
$(document).ready(function() {
$(".jumper").on("click", function( e ) {
e.preventDefault();
$("body, html").animate({
scrollTop: $( $(this).attr('href') ).offset().top
}, 600);
});
});
#long {
height: 500px;
background-color: blue;
}
Pliip
Ploop
...
pliip
ploop
New example with actual button styles for the links, just to prove a point.
Everything is essentially the same, except that I changed the class .jumper to .button and I added css styling to make the links look like buttons.
Button styles example