Jquery 为什么jqPlot';s DateAxisRenderer在显示单个数据点时崩溃?

Jquery 为什么jqPlot';s DateAxisRenderer在显示单个数据点时崩溃?,jquery,jqplot,Jquery,Jqplot,我已经用jqPlot隔离了一个导致整个页面javascript“崩溃”(无限期暂停)的最终案例。当我在具有单个值的折线图中使用时,会发生这种情况,如下所示: (function() { $(function() { var data, now, plot1; now = new Date; // single data point in the series: data = [[now, 1]]; return plot1 = $.jqplot("pl

我已经用jqPlot隔离了一个导致整个页面javascript“崩溃”(无限期暂停)的最终案例。当我在具有单个值的折线图中使用时,会发生这种情况,如下所示:

(function() {
  $(function() {
    var data, now, plot1;
    now = new Date;
    // single data point in the series:
    data = [[now, 1]];
    return plot1 = $.jqplot("plotTarget", [data], {
      axes: {
        xaxis: {
          // if I remove this renderer, the "crash" does not happen:
          renderer: $.jqplot.DateAxisRenderer
        }
      }
    });
  });
}).call(this);
为什么会发生这种情况?这是jqPlot中的错误还是我做错了什么

还注意到:如果我在序列中添加更多具有相同日期的值,则会出现相同的问题。如果我用不同的日期添加更多的值,问题就会消失


我正在使用jQuery v1.6.4、jqPlot v1.0.0b2_r1012并在Firefox 8.0.1上进行渲染。

浏览代码显示插件试图计算最小值和最大值以确定刻度。这仅仅表明作者暗示一个序列至少由两个数据点组成。文档中没有说明这一点,代码中也没有检查这就是插件“崩溃”的原因


在jqplot错误跟踪列表中,这个问题已经提交(4天前,2012年1月21日)。

我今天也遇到了这个问题,让我惊讶的是,我使用的脚本与JSFIDLE使用的代码是一样的

我在ASP.NET MVC中使用jqplot,并使用nuget扩展下载了jqplot脚本,结果发现扩展下载了jqplot的旧版本,这导致了问题

因此,只需将旧的DateAxisRender.js更改为新的更新版本,即可解决我的问题,或者您也可以从下载最新版本


我已经创建了一个

此错误的非官方修复程序位于dateAxisRenderer.js,但是您必须克隆repo或手动复制更改。