Javascript 幻灯片功能:setProperty在IE中不工作

Javascript 幻灯片功能:setProperty在IE中不工作,javascript,css,internet-explorer,css-variables,Javascript,Css,Internet Explorer,Css Variables,我正在开发一个幻灯片功能,它在除IE之外的所有浏览器上都非常有效 我最初认为这是因为数学。符号,但我为它添加了一个多边形填充,它解决了错误,但滑块仍然不起作用。然后我进一步研究了一下,我认为这是因为这个语法 _C.style.setProperty('--i', num); 用于设置值并在CSS中使用,如下所示: transform: translate(calc(var(--i, 0)/var(--n)*var(--n)*-100%)); 功能移动(e){ document.getElem

我正在开发一个幻灯片功能,它在除IE之外的所有浏览器上都非常有效

我最初认为这是因为
数学。符号
,但我为它添加了一个多边形填充,它解决了错误,但滑块仍然不起作用。然后我进一步研究了一下,我认为这是因为这个语法

_C.style.setProperty('--i', num);
用于设置值并在CSS中使用,如下所示:

transform: translate(calc(var(--i, 0)/var(--n)*var(--n)*-100%));
功能移动(e){
document.getElementsByClassName('checked')[0]。classList.remove('checked'))
如果(x0 | | x0==0){
如果(!数学符号){
数学符号=函数(x){
返回((x>0)-(x<0))| |+x;
}
}
设dx=unified(e).clientX-x0,s=Math.sign(dx);
如果((i>0|s<0)和(i0))
_C.style.setProperty('--i',i-=s);
let circles=document.getElementsByClassName('commential-circle'))
让圆=圆[i]
circle.classList.add('checked')
x0=零
}
};

我们的想法是点击一个气泡,然后滑到特定的“推荐信”

查看控制台,阅读错误消息……没有错误,@Teemu:DPerhaps一个CSS警告,然后呢?作为旁注,IE不支持变量的块上下文,即使它们是用
let
声明的。这里很可能不是问题,但很高兴知道,
let
与IE中的
var
完全相同。不幸的是,什么是
\u C
?我不记得像
--I
这样的样式属性,您是否使用它来设置一些值并在其他地方读取它?
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
  }
};