Функция слайда: setProperty не работает в IE - PullRequest
2 голосов
/ 05 июня 2019

Я работаю над функцией слайдов, и она прекрасно работает во всех браузерах, кроме IE, конечно.

Сначала я подумал, что это из-за Math.sign, но я добавил для него полизаполнение, и это решило ошибку, но ползунок все еще не работал. Потом я немного больше исследовал и думаю, что это из-за синтаксиса

_C.style.setProperty('--i', num);

, который используется для установки значения и использования его в CSS следующим образом:

transform: translate(calc(var(--i, 0)/var(--n)*var(--n)*-100%));
function move(e) {
  document.getElementsByClassName('checked')[0].classList.remove('checked')
  if(x0 || x0 === 0) {
    if (!Math.sign) {
      Math.sign = function(x) {
        return ((x > 0) - (x < 0)) || +x;
    }
  }
    let dx = unify(e).clientX - x0, s = Math.sign(dx);

    if((i > 0 || s < 0) && (i < N - 1 || s > 0))
      _C.style.setProperty('--i', i -= s);
      let circles = document.getElementsByClassName('testimonial-circle')
      let circle = circles[i]
      circle.classList.add('checked')

    x0 = null
  }
};

Идея состоит в том, чтобы щелкнуть пузырь и перейти к конкретному «отзыву»

...