scrollTop jquery, прокрутка до div не прокрутка? - PullRequest
0 голосов
/ 04 января 2019

Я наткнулся на этот код на кодовой панели: https://codepad.co/snippet/YPDXE33r

Однако на моем веб-сайте, когда я нажимаю кнопку, страница перемещается вниз примерно на 1 см, а не на соответствующий раздел?

Я добавил весь приведенный ниже код, и он работает в приведенном выше примере.

Этот код используется на WordPress сайте.

Спасибо

HTML

<section>
<a href="#" class="scroll-down" address="true"></a>
</section>

CSS

.scroll-down {
  opacity: 1;
  -webkit-transition: all .5s ease-in 3s;
  transition: all .5s ease-in 3s;
}

.scroll-down {
  position: absolute;
  bottom: 30px;
  left: 50%;
  margin-left: -16px;
  display: block;
  width: 32px;
  height: 32px;
  border: 2px solid #FFF;
  background-size: 14px auto;
  border-radius: 50%;
  z-index: 2;
  -webkit-animation: bounce 2s infinite 2s;
  animation: bounce 2s infinite 2s;
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in;
}

.scroll-down:before {
    position: absolute;
    top: calc(50% - 8px);
    left: calc(50% - 6px);
    transform: rotate(-45deg);
    display: block;
    width: 12px;
    height: 12px;
    content: "";
    border: 2px solid white;
    border-width: 0px 0 2px 2px;
}

@keyframes bounce {
  0%,
  100%,
  20%,
  50%,
  80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}

JS

$(function() {
    $('.scroll-down').click (function() {
      $('html, body').animate({scrollTop: $('#div_outerfooter').offset().top }, 'slow');
      return false;
    });
  });

1 Ответ

0 голосов
/ 04 января 2019

Попробуйте как-нибудь поработать внутри готового документа

$(document).ready(function(){
    $(".scroll-down").click (function() {
          $('html, body').animate({scrollTop: $('section.ok').offset().top }, 'slow');
          return false;
        });
     });
...