我只向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”?
发布于 2012-08-22 17:24:50
我找到了一个简单的解决方案:我将完整的插件复制到一个新文件中,并像这样更改了插件的名称
$.jqplot.newPluginName = function(options) {在我过去设置pointLabels插件选项的站点上,我现在使用新名称执行相同的操作:
newPluginName:{
show:true,
location:'s',
fontSize: '1em',
centerLabel: true, // extra option, see code
labelsFromSeries: true,
formatter: $.jqplot.DefaultTickFormatter,
}别忘了在你的网站上加入新的插件文件
https://stackoverflow.com/questions/11626493
复制相似问题