jQuery UI滑块 - 无法调用未定义的方法'addClass'

SCS*_*SCS 19 javascript jquery-ui

我有几个月前工作得很好的旧jQuery UI滑块,但现在我似乎得到一个异常读取:无法调用未定义的方法'addClass'.我已经检查了传递给滑块的值,它们是常规的Javascript日期.

  $('#dateFilter').click(function() {
    return $('#sliderContainer').slideToggle(200);
  });

  $(function() {
    var endFiling, startFiling;
    startFiling = Date.parse($('#startFiling').val());
    endFiling = Date.parse($('#endFiling').val());
    return $('#filingDateSlider').slider({
      range: true,
      min: startFiling,
      max: endFiling,
      step: 86400000,
      values: [startFiling, endFiling],
      slide: function(event, ui) {
        var eD, end, sD, start;
        sD = new Date(ui.values[0]);
        start = dateFormat(sD);
        eD = new Date(ui.values[1]);
        end = dateFormat(eD);
        $('#filingStartDate').text(start);
        return $('#filingEndDate').text(end);
      }
        });
Run Code Online (Sandbox Code Playgroud)

有什么原因可能导致我出现这个新错误吗?

http://i.imgur.com/xC2E6.jpg

Vin*_*nay 35

对于读回这个问题的任何人,如果您从CDN中拔出,请尝试从最新的jQuery UI版本中提取.我也遇到了这个问题,它通过使用更高版本的jQuery UI来解决.

  • 我希望我能用一百万来"解决"这个答案.谢谢! (3认同)
  • 我有一个滚动插件的同样的问题,我把1.8.23版本拉到我的项目,它现在就像一个魅力! (2认同)

小智 21

我通过在"min","max"和"values"中使用整数来解决这个错误.也许你正在设置空值.
jQuery Slider规范说:

  • 最大数量默认值:100
  • min Number默认值:0
  • 值数字默认值:0

所以"值"是一组数字.


Ale*_*lex 10

对于谁仍然有这个问题的人,请确保您要添加的值(min,max,和values都为数字,而不是STRINGS!

一直在尝试诊断以下代码失败的问题:

t.slider({
  range : true,
  min   : t.attr('data-min'),
  max   : t.attr('data-max'),
  values: [t.attr('data-min'), t.attr('data-max')],
  step  : 1.00,
  slide : function (e, ui) {
    var
      v = (s == 'price') ? '£' + ui.values[0] + ' - £' + ui.values[1] : ui.values[0] + ' - ' + ui.values[1] + 'kg'
    $('#filter-' + s).html(v)
  },
  stop  : function () {
    Items.filter()
  }
})
Run Code Online (Sandbox Code Playgroud)

t.attr()返回STRING时,Slider未能valueMouse在jQuery UI的1.10.1版本的第12843行上设置.它不是一个值,而是返回一个字符串(类似于39.99549.21(最小值39.99549.21- 百分比*最大值连接)

希望有人帮助!