Thứ Hai, 21 tháng 4, 2025

Scroll-Top-Button


 **Cách 1:

# HTML:

<div class="back-to-top">

<img src="/themes/'.$ThemeSel.'/images/top.png">

</div>


# CSS:

.back-to-top {

    bottom: 5em;

    color: #000000;

    cursor: pointer;

    display: none;

    font-size: 12px;

    position: fixed;

    right: 10px;

    text-decoration: none;

    z-index: 99999;

}


# JS:

<script>

jQuery(document).ready(function() {

var offset = 220;

var duration = 500;

jQuery(window).scroll(function() {

if (jQuery(this).scrollTop() > offset) {

jQuery('.back-to-top').fadeIn(duration);

} else {

jQuery('.back-to-top').fadeOut(duration);

}


if (jQuery(this).scrollTop() > 140) {

jQuery('.jack-moon-menu').fadeIn(140);

} else {

jQuery('.jack-moon-menu').fadeOut(0);

}

});

jQuery('.back-to-top').click(function(event) {

event.preventDefault();

jQuery('html, body').animate({scrollTop: 0}, duration);

return false;

});

});

</script>


**Cách 2:

# HTML:

<div id="hs-back-top" class="animated bounceInRight">

<i class="fa fa-angle-up"></i>

</div>


# JS:

<script type="text/javascript">

$(document).ready(function(a){


$(window).scroll(function() {

if ($(window).scrollTop() > 300) {

$('#hs-back-top').removeClass('bounceInRight bounceOutRight hs-hide').addClass('bounceInRight');

} else {

$('#hs-back-top').removeClass('bounceInRight bounceOutRight').addClass('bounceOutRight');

}

});

$('#hs-back-top').click(function() {

$('html,body').animate({

scrollTop: 0

}, 800);

});

});

</script>


# CSS: 

#hs-back-top {

    background: #004ea0;

    font-family: "Roboto", sans-serif;

    position: fixed;

    right: 20px;

    bottom: 50px;

    height: 36px;

    width: 36px;

    color: #fff;

    text-align: center;

    line-height: 36px;

    cursor: pointer;

    font-size: 20px;

    border-radius: 36px;

}

.bounceInRight {

    -webkit-animation-name: bounceInRight;

    animation-name: bounceInRight;

}

.animated {

    -webkit-animation-duration: 1s;

    animation-duration: 1s;

    -webkit-animation-fill-mode: both;

    animation-fill-mode: both;

}


@keyframes bounceInRight {

  from,

  60%,

  75%,

  90%,

  to {

    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);

    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);

  }

  from {

    opacity: 0;

    -webkit-transform: translate3d(3000px, 0, 0);

    transform: translate3d(3000px, 0, 0);

  }

  60% {

    opacity: 1;

    -webkit-transform: translate3d(-25px, 0, 0);

    transform: translate3d(-25px, 0, 0);

  }

  75% {

    -webkit-transform: translate3d(10px, 0, 0);

    transform: translate3d(10px, 0, 0);

  }

  90% {

    -webkit-transform: translate3d(-5px, 0, 0);

    transform: translate3d(-5px, 0, 0);

  }

  to {

    -webkit-transform: none;

    transform: none;

  }

}

.bounceInRight {

  -webkit-animation-name: bounceInRight;

  animation-name: bounceInRight;

}

@-webkit-keyframes bounceInUp {

  from,

  60%,

  75%,

  90%,

  to {

    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);

    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);

  }

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, 3000px, 0);

    transform: translate3d(0, 3000px, 0);

  }

  60% {

    opacity: 1;

    -webkit-transform: translate3d(0, -20px, 0);

    transform: translate3d(0, -20px, 0);

  }

  75% {

    -webkit-transform: translate3d(0, 10px, 0);

    transform: translate3d(0, 10px, 0);

  }

  90% {

    -webkit-transform: translate3d(0, -5px, 0);

    transform: translate3d(0, -5px, 0);

  }

  to {

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}

@keyframes bounceInUp {

  from,

  60%,

  75%,

  90%,

  to {

    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);

    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);

  }

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, 3000px, 0);

    transform: translate3d(0, 3000px, 0);

  }

  60% {

    opacity: 1;

    -webkit-transform: translate3d(0, -20px, 0);

    transform: translate3d(0, -20px, 0);

  }

  75% {

    -webkit-transform: translate3d(0, 10px, 0);

    transform: translate3d(0, 10px, 0);

  }

  90% {

    -webkit-transform: translate3d(0, -5px, 0);

    transform: translate3d(0, -5px, 0);

  }

  to {

    -webkit-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

  }

}

.bounceInUp {

  -webkit-animation-name: bounceInUp;

  animation-name: bounceInUp;

}

@-webkit-keyframes bounceOut {

  20% {

    -webkit-transform: scale3d(0.9, 0.9, 0.9);

    transform: scale3d(0.9, 0.9, 0.9);

  }

  50%,

  55% {

    opacity: 1;

    -webkit-transform: scale3d(1.1, 1.1, 1.1);

    transform: scale3d(1.1, 1.1, 1.1);

  }

  to {

    opacity: 0;

    -webkit-transform: scale3d(0.3, 0.3, 0.3);

    transform: scale3d(0.3, 0.3, 0.3);

  }

}

@keyframes bounceOut {

  20% {

    -webkit-transform: scale3d(0.9, 0.9, 0.9);

    transform: scale3d(0.9, 0.9, 0.9);

  }

  50%,

  55% {

    opacity: 1;

    -webkit-transform: scale3d(1.1, 1.1, 1.1);

    transform: scale3d(1.1, 1.1, 1.1);

  }

  to {

    opacity: 0;

    -webkit-transform: scale3d(0.3, 0.3, 0.3);

    transform: scale3d(0.3, 0.3, 0.3);

  }

}

.bounceOut {

  -webkit-animation-name: bounceOut;

  animation-name: bounceOut;

}

@-webkit-keyframes bounceOutDown {

  20% {

    -webkit-transform: translate3d(0, 10px, 0);

    transform: translate3d(0, 10px, 0);

  }

  40%,

  45% {

    opacity: 1;

    -webkit-transform: translate3d(0, -20px, 0);

    transform: translate3d(0, -20px, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(0, 2000px, 0);

    transform: translate3d(0, 2000px, 0);

  }

}

@keyframes bounceOutDown {

  20% {

    -webkit-transform: translate3d(0, 10px, 0);

    transform: translate3d(0, 10px, 0);

  }

  40%,

  45% {

    opacity: 1;

    -webkit-transform: translate3d(0, -20px, 0);

    transform: translate3d(0, -20px, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(0, 2000px, 0);

    transform: translate3d(0, 2000px, 0);

  }

}

.bounceOutDown {

  -webkit-animation-name: bounceOutDown;

  animation-name: bounceOutDown;

}

@-webkit-keyframes bounceOutLeft {

  20% {

    opacity: 1;

    -webkit-transform: translate3d(20px, 0, 0);

    transform: translate3d(20px, 0, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(-2000px, 0, 0);

    transform: translate3d(-2000px, 0, 0);

  }

}

@keyframes bounceOutLeft {

  20% {

    opacity: 1;

    -webkit-transform: translate3d(20px, 0, 0);

    transform: translate3d(20px, 0, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(-2000px, 0, 0);

    transform: translate3d(-2000px, 0, 0);

  }

}

.bounceOutLeft {

  -webkit-animation-name: bounceOutLeft;

  animation-name: bounceOutLeft;

}

@-webkit-keyframes bounceOutRight {

  20% {

    opacity: 1;

    -webkit-transform: translate3d(-20px, 0, 0);

    transform: translate3d(-20px, 0, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(2000px, 0, 0);

    transform: translate3d(2000px, 0, 0);

  }

}

@keyframes bounceOutRight {

  20% {

    opacity: 1;

    -webkit-transform: translate3d(-20px, 0, 0);

    transform: translate3d(-20px, 0, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(2000px, 0, 0);

    transform: translate3d(2000px, 0, 0);

  }

}

.bounceOutRight {

  -webkit-animation-name: bounceOutRight;

  animation-name: bounceOutRight;

}

@-webkit-keyframes bounceOutUp {

  20% {

    -webkit-transform: translate3d(0, -10px, 0);

    transform: translate3d(0, -10px, 0);

  }

  40%,

  45% {

    opacity: 1;

    -webkit-transform: translate3d(0, 20px, 0);

    transform: translate3d(0, 20px, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(0, -2000px, 0);

    transform: translate3d(0, -2000px, 0);

  }

}

@keyframes bounceOutUp {

  20% {

    -webkit-transform: translate3d(0, -10px, 0);

    transform: translate3d(0, -10px, 0);

  }

  40%,

  45% {

    opacity: 1;

    -webkit-transform: translate3d(0, 20px, 0);

    transform: translate3d(0, 20px, 0);

  }

  to {

    opacity: 0;

    -webkit-transform: translate3d(0, -2000px, 0);

    transform: translate3d(0, -2000px, 0);

  }

}

.bounceOutUp {

  -webkit-animation-name: bounceOutUp;

  animation-name: bounceOutUp;

}

@-webkit-keyframes fadeIn {

  from {

    opacity: 0;

  }

  to {

    opacity: 1;

  }

}

@keyframes fadeIn {

  from {

    opacity: 0;

  }

  to {

    opacity: 1;

  }

}

.fadeIn {

  -webkit-animation-name: fadeIn;

  animation-name: fadeIn;

}

@-webkit-keyframes fadeInDown {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, -20px, 0);

    transform: translate3d(0, -20px, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

@keyframes fadeInDown {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, -20px, 0);

    transform: translate3d(0, -20px, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

.fadeInDown {

  -webkit-animation-name: fadeInDown;

  animation-name: fadeInDown;

}

@-webkit-keyframes fadeInDownBig {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, -2000px, 0);

    transform: translate3d(0, -2000px, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

@keyframes fadeInDownBig {

  from {

    opacity: 0;

    -webkit-transform: translate3d(0, -2000px, 0);

    transform: translate3d(0, -2000px, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

.fadeInDownBig {

  -webkit-animation-name: fadeInDownBig;

  animation-name: fadeInDownBig;

}

@-webkit-keyframes fadeInLeft {

  from {

    opacity: 0;

    -webkit-transform: translate3d(-50px, 0, 0);

    transform: translate3d(-50px, 0, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

@keyframes fadeInLeft {

  from {

    opacity: 0;

    -webkit-transform: translate3d(-50px, 0, 0);

    transform: translate3d(-50px, 0, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

.fadeInLeft {

  -webkit-animation-name: fadeInLeft;

  animation-name: fadeInLeft;

}

@-webkit-keyframes fadeInLeftBig {

  from {

    opacity: 0;

    -webkit-transform: translate3d(-2000px, 0, 0);

    transform: translate3d(-2000px, 0, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

@keyframes fadeInLeftBig {

  from {

    opacity: 0;

    -webkit-transform: translate3d(-2000px, 0, 0);

    transform: translate3d(-2000px, 0, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

.fadeInLeftBig {

  -webkit-animation-name: fadeInLeftBig;

  animation-name: fadeInLeftBig;

}

@-webkit-keyframes fadeInRight {

  from {

    opacity: 0;

    -webkit-transform: translate3d(50px, 0, 0);

    transform: translate3d(50px, 0, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

@keyframes fadeInRight {

  from {

    opacity: 0;

    -webkit-transform: translate3d(50px, 0, 0);

    transform: translate3d(50px, 0, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

.fadeInRight {

  -webkit-animation-name: fadeInRight;

  animation-name: fadeInRight;

}

@-webkit-keyframes fadeInRightBig {

  from {

    opacity: 0;

    -webkit-transform: translate3d(2000px, 0, 0);

    transform: translate3d(2000px, 0, 0);

  }

  to {

    opacity: 1;

    -webkit-transform: none;

    transform: none;

  }

}

Không có nhận xét nào:

Đăng nhận xét