Сайт не регистрирует первый клик в любом месте на странице в течение нескольких секунд после того, как произошло событие hammer.js. (Только для мобильных устройств) - PullRequest
0 голосов
/ 03 ноября 2019

Сайт находится на моем домене разработчика https://jakegroves.co/talentcards

Чтобы увидеть страницу, вам нужно уменьшить размер браузера до разрешения для мобильных устройств.

Проблема

Если щелкнуть значок поиска в нижней части страницы (на мобильном устройстве), а затем смахнуть отображаемый контейнер - если вы быстро нажмете любую кнопку в другом месте на странице, она не регистрируется.

По какой-то причине это относится только к мобильным устройствам и отлично работает на настольных компьютерах.

Для повторения процесса

Вы можете смоделировать эффект в инструментах Chrome Dev, если вы переключаетесьопция панели инструментов устройства. Вот gif проблемы https://gyazo.com/6cf07560c7e94dabac7afe08ceef1e3c

Это JavaScript, который я использую для переключения контейнера при нажатии кнопки

  var toggleCardFilter = function(x) {
    $(x).toggleClass('toggleCardFilter')
  };

  $(function() {
    $('#cardFilterBtn').click(function() {
      toggleCardFilter('#cardFilterContainer');
    });
  });

Это JavaScript-файл hammer.js, который я использую для удаления класса контейнера фильтра

  var cardFilterSwipe = document.getElementById('cardFilterContainer');
  var mc = new Hammer(cardFilterSwipe);

  mc.get('pan').set({ direction: Hammer.DIRECTION_ALL });

  mc.on("pandown", function(ev) {
      if (ev.type = 'pandown') {
        $("#cardFilterContainer").removeClass("toggleCardFilter");
      };
  });

В конце концов, эта проблема не имеет большого значения, но я надеюсь, что предоставил все детали, которые могут вам понадобиться для понимания проблемы, спасибо:)

...