如何为jqplot -option创建新插件?

时间:2012-07-24 07:55:30

标签: jqplot labels series gantt-chart

我在jqplot.pointlabels.js文件中添加了几行,所以我在jqplot pointlabels选项中得到了一个额外的选项。如何制作新的插件?

当然,如果需要更新,我希望保留这些更改。我不知道该怎么做。我正在尝试制作时间轴/甘特图。每个项目或线条都是一个只有两个点的系列。因此,我不是在每一端都有点标签,而是计算中心并只放置一个标签。

所以在jqplot.pointlabels.js中,第322行将是:

            if (p.centerLabel) {
                var ell =  xax.u2p(pd[i][0]) + ((xax.u2p(pd[1][0]) - xax.u2p(pd[0][0])) / 2) +p.xOffset(elem, location);
            } else {
                var ell = xax.u2p(pd[i][0]) + p.xOffset(elem, location);    
            }

在jqplot的选项中我会写一些类似的东西:

  pointLabels:{
              show:true,
              location:'s',
              fontSize: '1em',
              centerLabel: true, // extra option, see code
              labelsFromSeries: true,
              formatter: $.jqplot.DefaultTickFormatter,
          }

我可以将所有代码复制到一个名为jqplot.singleSeriesLabels.js的新插件中,但是如何让jqplot将该插件用于'pointLabels'?

1 个答案:

答案 0 :(得分:0)

我发现了一个简单的溶剂: 我将完整的插件复制到一个新文件,只是更改了插件名称

$.jqplot.newPluginName = function(options) {

在我以前设置pointLabels插件选项的网站上,我现在使用新名称做同样的事情:

newPluginName:{
          show:true,
          location:'s',
          fontSize: '1em',
          centerLabel: true, // extra option, see code
          labelsFromSeries: true,
          formatter: $.jqplot.DefaultTickFormatter,
      }

不要忘记在您的网站上添加新的插件文件