JSFiddle - React, Tailwind, and code Playground
HTML
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex optio officia, repellendus placeat eligendi earum, aliquid deleniti culpa nobis officiis modi.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui accusamus cupiditate iusto eum odit mollitia vero reprehenderit, ex...
CSS
.btn-scroll {
cursor: pointer;
position: fixed;
display: block;
bottom: 35px;
right: 20px;
overflow: hidden;
width: 44px;
height: 44px;
z-index: 999;
background-color: #68bec4;
border: none;
text-align: center;
border-radius: 50%;
transition: 0.3s background-color;
}
.hide {
display: none;
}
JavaScript
$(document).ready(function() {
$btn = $('.btn-scroll');
$(window).scroll(function(){
var $height = $(this).scrollTop();
var maxheight = 300;
if($height > maxheight) {
$btn.removeClass('hide');
} else {
$btn.addClass('hide');
}
});
$btn.on('click', function() {
$('html, body').animate({
scrollTop: 0
}, '300');
});
});