如何设置noUiSlider,步长为10分钟?

Jee*_*eet 3 jquery nouislider

我一直在使用我已集成noUiSlider的应用程序.我已经集成了它,并且基于时间的滑块以15分钟的步长运行良好,范围为24小时,如下所示.

$(".time_range_slider").noUiSlider({
  start : [8, 18],
  behaviour : 'drag',
  connect : true,
  step : .25,
  range : {'min': 0, 'max': 24}
});

$(".time_range_slider").noUiSlider_pips({
  mode : 'steps',
  filter : filter_hour,
  stepped : true
});

function filter_hour(value, type) {
  return ((value * 100) % 100 == 0) ? 1 : 0;
}
Run Code Online (Sandbox Code Playgroud)

但现在我想迈出10分钟的步伐.我尝试了许多方面,如步骤:.16但无法达到预期的结果.

请为此建议任何解决方案

Sil*_*mor 8

我的答案是没有使用jquery案例我不知道为什么noUiSlider没有从jquery里面检测到片段,希望你能解决这个问题.

如何实施:

  • cosider 24小时== 24小时*60分钟==> 1440分钟
  • 使用分钟范围进行选择:

    范围:{'min':0,'max':1440}

  • 格式化管道标签和选择器工具提示,使用wNumb.js显示格式hh:mm

片段:

var range = document.getElementById('time_range_slider');

range.style.height = '800px';
range.style.margin = '0 auto 30px';

var aproximateHour = function (mins)
{
//http://greweb.me/2013/01/be-careful-with-js-numbers/
 var minutes = Math.round(mins % 60);
  if (minutes == 60 || minutes == 0)
  {
    return mins / 60;
  }
  return Math.trunc (mins / 60) + minutes / 100;
}


noUiSlider.create(range, {
  start : [240, 1080],
  connect: true, 
  direction: 'rtl', 
  orientation: 'vertical', 
  behaviour: 'tap-drag', 
  step: 10,
  tooltips: true,
  range : {'min': 0, 'max': 1440},
  format:  wNumb({
		decimals: 2,
    mark: ":",
		encoder: function(a){
       return aproximateHour(a);
      }
	}),
  pips: {
    mode : 'steps',  
    format:  wNumb({
    mark: ":",
    decimals: 2,
		encoder: function(a ){
        return aproximateHour(a);
      }
		}),
  	filter : filter_hour,
  	stepped : true,
    density:1
  }
});



function filter_hour(value, type) {
  return (value % 60 == 0) ? 1 : 0;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/wnumb/1.0.4/wNumb.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/9.1.0/nouislider.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/9.1.0/nouislider.js"></script>
<div id="time_range_slider"></div>
Run Code Online (Sandbox Code Playgroud)