Javascript 将css类添加到事件的noUiSlider句柄

Javascript 将css类添加到事件的noUiSlider句柄,javascript,nouislider,Javascript,Nouislider,默认情况下,将活动类添加到活动句柄,但在事件结束时将其删除。我希望有一种方式向用户显示,句柄已经被拖动,因此通过css类更改颜色将是理想的 我无法判断哪些句柄是从它提供的数据中拖动的 这是我启动noUISlider的函数 setRangeSlider(e) { const min = 0; const max = 1000000; noUiSlider.cssClasses.target += ' c-range-slider'; const options = { st

默认情况下,将活动类添加到活动句柄,但在事件结束时将其删除。我希望有一种方式向用户显示,句柄已经被拖动,因此通过css类更改颜色将是理想的

我无法判断哪些句柄是从它提供的数据中拖动的

这是我启动noUISlider的函数

setRangeSlider(e) {
  const min = 0;
  const max = 1000000;
  noUiSlider.cssClasses.target += ' c-range-slider';
  const options = {
    start: [min || 0, max || this.maxAvailablePrice.id],
    step: 50000,
    tooltips: true,
    connect: true,
    range: {
      min,
      max,
    },
    format: {
      to(value) {
        return formatCurrency([value]);
      },
      from(value) {
        return stripFormatting(value);
      },
    },
  };
  this.slider = noUiSlider.create(e, options);

  this.slider.on('start', (values) => {
    console.log('SearchFiltersPriceComponent -> setRangeSlider -> this.slider', this.slider);
  });
}

当我从开始事件控制台输出
this.slider时,它会打印出各种有用的信息,但我找不到刚才拖动的句柄以及如何将该句柄作为目标来添加类。

this.slider.target
将在事件回调函数中返回slider元素和
handle
参数将返回已拖动的句柄的索引。所以这两个可以一起用来定位一个特定的句柄。参见代码示例

setRangeSlider(e) {
  const min = 0;
  const max = 1000000;
  noUiSlider.cssClasses.target += ' c-range-slider';
  const options = {
    start: [min || 0, max || this.maxAvailablePrice.id],
    step: 50000,
    tooltips: true,
    connect: true,
    range: {
      min,
      max,
    },
    format: {
      to(value) {
        return formatCurrency([value]);
      },
      from(value) {
        return stripFormatting(value);
      },
    },
  };
  this.slider = noUiSlider.create(e, options);

  this.slider.on('start', (values, handle, unencoded, tap, positions, noUiSlider) => {
    let sliderElem = this.slider.target;
    let handleElem = document.querySelectorAll("div.noUi-handle[data-handle='" + handle + "']")[0];
    console.log('SearchFiltersPriceComponent -> setRangeSlider -> this.slider', handleElem);
     handleElem.classList.add("mystyle");
  });

  this.slider.on('end', (values, handle, unencoded, tap, positions, noUiSlider) => {
    let sliderElem = this.slider.target;
    let handleElem = document.querySelectorAll("div.noUi-handle[data-handle='"+handle+"']")[0];
    handleElem.classList.remove("mystyle");
   });
}

谢谢,这正是我想要的。您在哪里找到有关传入
句柄
或其他选项的文档?我在文档中没有看到任何关于这方面的内容。实际上,我只是在这里找到了它,都在装订中。谢谢,不客气。