多个noUiSlider实例化问题

时间:2016-11-22 16:09:37

标签: javascript jquery html css3 nouislider

我试图在一个页面中创建多个noUiSliders,但我收到此错误" noUiSlider.create需要一个元素"。

基本上,我会从不同的功能中实例化两个(或更多)滑块(具有不同的类别)但我得到上述错误。

对此插件有一定经验的人?

以下是一个例子:

var Slider1Handler = function(){

 var slider1 = document.getElementsByClassName('slider1');
 noUiSlider.create(slider1, {
      start: [ 0 ],
      connect: [true, false],
      step: 1000,
      tooltips: true,
      orientation: "horizontal",
      range: {
        'min': [  2000 ],
        'max': [ 10000 ]
      }
 });
 };

var Slider2Handler = function(){

 var slider2 = document.getElementsByClassName('slider2');
 noUiSlider.create(slider2, {
      start: [ 0 ],
      connect: [true, false],
      step: 1000,
      tooltips: true,
      orientation: "horizontal",
      range: {
        'min': [  2000 ],
        'max': [ 10000 ]
      }
 });
 };

1 个答案:

答案 0 :(得分:2)

getElementsByClassName会返回nodeList,而不是单个元素。您可以使用以下任何选项:

  • 在元素中添加id并使用getElementById;
  • nodeList中的第一个元素:document.getElementsByClassName('slider2')[0];
  • 使用document.querySelector('.slider2')返回单个元素;