как да създам нов плъгин за jqplot -option?

Добавих само няколко реда към файла 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“?


person Jeroen    schedule 24.07.2012    source източник


Отговори (1)


Намерих просто решение: копирах целия плъгин в нов файл и просто промених името на плъгина така

$.jqplot.newPluginName = function(options) {

На сайта, където задавах опциите за приставката pointLabels, сега правя същото, но с новото име:

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

Не забравяйте да включите новия плъгин файл на вашия сайт

person Jeroen    schedule 22.08.2012