Не работают клики на ссылки слайдов bxSlider в Firefox

29 марта 2018

На днях обнаружил страшный баг в bxSlider. В Mozilla Firefox ни один кликабельный элемент не активен.

Ошибка воспроизводится в последней на данный момент версии v4.2.12

Решение нашлось на Stackoverflow.

Нужно заменить

if (slider.viewport.get(0).setPointerCapture) {

на

if (slider.viewport.get(0).setPointerCapture && orig.pointerId) {

строчка 1109

Т.к. Firefox тут возвращает orig.pointerId === 0 и slider.viewport.get(0).setPointerCapture(slider.pointerId) отключает событие клика.

4 комментария

  • Дмитрий 25 октября 2019 00:32
    Приветствую!
    А вот для версии bxSlider v4.2.15 этот не срабатывает фокус...
    • Eugen Nichikov Hardman 25 октября 2019 10:04
      А сама ошибка до сих пор есть? :) Могу скинуть старую версию слайдера.
  • shchipaa 17 февраля 2020 11:01
    У меня и на bxSlider v4.2.12 это решение не помогало. Причём не работали переходы в Хроме (80.0.3987.106) на 7-ке. На ХРюше всё летало.
    Вышел из ситуации следующим образом:
    Т.к. slider.viewport.get(0).setPointerCapture возвращало 1 и orig.pointerId возвращало 1, то эту же строку (1109):
    if (slider.viewport.get(0).setPointerCapture) {

    заменил на:
    if (!slider.viewport.get(0).setPointerCapture) {

    Спасибо за идею! Помогли.
    • Светлана 12 марта 2020 10:45
      Здравствуйте, подошло ваше решение, спасибо!)
      Вот только один нюанс, у вас ошибок в консоли нет?
      у меня при клике выдает ошибки

      Uncaught DOMException: Failed to execute 'releasePointerCapture' on 'Element': No active pointer with the given id is found.
      и т д

      не пойму как убрать

Написать комментарий