JQuery отменяет анимацию при анимации между значениями - PullRequest
0 голосов
/ 12 октября 2019

Я использую .animate() для анимации между двумя значениями с помощью функции шага. Поскольку селектора нет, я не могу использовать .stop()

        $({ Value: 50 }).animate({ Value: 0 }, {

            duration: 1000,

            step: function (val) {

                $('#SomeElement').css({

                    transform: "translateY(" + val + "px)"
                });
            }
        });

Как я могу остановить эту анимацию после ее запуска?

1 Ответ

0 голосов
/ 12 октября 2019

Похоже, я мог бы найти способ использовать селекторы (см. Фрагмент ниже).

<!doctype html>
<html>
  <head>
    <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
    <style type="text/css">
      div {
        top: 100;
        left: 0;
        width: 10px;
        height: 10px;
        background-color: #000;
      }
    </style>
  </head>
  <body>
    <div id="SomeElement"></div>

    <button>stop</button>

    <script>
      $('#SomeElement').animate({ top: 100 }, {

        duration: 2000,

        step: function (val) {

          $('#SomeElement').css({

            transform: "translateY(" + val + "px)"

          });

        }
      });

    $('button').click(function () {

      $('#SomeElement').stop();

    });
    </script>
  </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...