jQuery горизонтальная прокрутка при нажатии не работает - PullRequest
0 голосов
/ 13 апреля 2020

Я знаю, что есть несколько вопросов по этой теме c, но я не могу понять, почему это не работает ...

У меня есть веб-сайт в горизонтальном формате, у меня 2 стрелки на снизу и хотел бы иметь возможность щелкнуть стрелку вправо для прокрутки вправо и влево для прокрутки влево.

Это html:

<div class="arrows">
    <div class="arrow-left">
        <a href="">
          <img src="/assets/images/arrow-left.svg"/>
          </a>
      </div>
    <div class="arrow-right">
        <a href="">
          <img src="/assets/images/arrow-right.svg"/>
          </a>
      </div>
  </div>

и это jQuery

$(document).ready(function(){

  var scrollTimer;
  var $document = $(document);
  var scrollOffset = 20;
  var maxScrollOffsetLeft = $document.width() - $("body").innerWidth();

  function scrollContent(scrollDir) {
      var scrollArgs = {
          scrollLeft: ($document.scrollLeft() + (scrollOffset * scrollDir))
      };
      $("html").animate(scrollArgs, 50);
  };

  function scrollLeft() {
      if ($document.scrollLeft() > 0) {
          scrollContent(-1);
      }
  };

  function scrollRight() {
      if ($document.scrollLeft() < maxScrollOffsetLeft) {
          scrollContent(1);
      }
  };

  function scrollStop() {
      clearInterval(scrollTimer);
  };

  $(".arrow-left").on("mousedown", function () {
      scrollTimer = setInterval(scrollLeft, 60);
  }).on("mouseup", scrollStop);
  $(".arrow-right").on("mousedown", function () {
      scrollTimer = setInterval(scrollRight, 60);
  }).on("mouseup", scrollStop);

});

Я не получаю никаких стрелок консоли, но он не работает все, что происходит, когда я нажимаю на стрелки, это то, что кажется, что страница обновляется или что-то в этом роде. Кто-нибудь знает почему? Или есть лучшее решение?

Спасибо всем:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...