Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Back to the top snippet
{% comment %}
Reduce below value if you need the back to the top button to appear higher up on the page.
That value is in pixels.
{% endcomment %}
{% assign vertical_offset_for_trigger = 300 %}
{% comment %}
Vertical offset from bottom of browser for the position of the button.
{% endcomment %}
{% assign position_from_bottom = '4em' %}
<a href="#" title="Back to the top" class="back-to-top">
<span>Back to the top</span> <i class="fa fa-arrow-circle-o-up fa-2x"></i>
</a>
{{ '//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css' | stylesheet_tag }}
<style>
.back-to-top {
position: fixed;
bottom: {{ position_from_bottom }};
right: 0px;
text-decoration: none;
color: #999;
background-color: #eee;
font-size: 16px;
padding: 0.3em;
display: none;
-webkit-border-top-left-radius: 3px;
-webkit-border-bottom-left-radius: 3px;
-moz-border-radius-topleft: 3px;
-moz-border-radius-bottomleft: 3px;
border-top-left-radius: 3px;
border-bottom-left-radius: 3px;
z-index: 60000;
}
.back-to-top i {
vertical-align: middle;
}
.back-to-top span {
padding-left: 0.5em;
}
.back-to-top i + span {
padding-left: 0;
}
.back-to-top:hover {
text-decoration: none;
color: #555;
}
</style>
<script>
window.onload = function() {
jQuery(function($) {
var offset = {{ vertical_offset_for_trigger }};
var duration = 500;
$(window).scroll(function() {
if ($(this).scrollTop() > offset) {
$('.back-to-top').fadeIn(duration);
}
else {
$('.back-to-top').fadeOut(duration);
}
});
$('.back-to-top').unbind('click.smoothscroll').bind('click', function(e) {
e.preventDefault();
$('html, body').animate( { scrollTop: 0 }, duration);
return false;
})
});
}
</script>
@DreamSpace-Inc
Copy link

DreamSpace-Inc commented Mar 2, 2018

How do you use a custom icon that's not in FA?

Cheers!

Copy link

ghost commented Mar 16, 2018

Thanks so much. this was perfect. Change the color to match our theme and it's perfect :) you and Caroline are amazing!

@Nicole-Burnard
Copy link

Nicole-Burnard commented Jan 6, 2020

Perfect code thanks so much!

@lnovembri
Copy link

lnovembri commented Apr 24, 2020

Easy and worked perfectly, thank you!

@Smj90
Copy link

Smj90 commented May 20, 2020

Perfect!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment