не берите в голову, я сделал окольный способ создать свою собственную подсказку через jquery.
Я оставил настройки подсветки такими, какими они были в моем вопросе (хотя вам, вероятно, не нужны подсказки).
В моем файле js после настройки гистограммы (после $.jqplot('chart', ...
) я установил привязку при наведении мыши, как показали некоторые примеры. Я изменил это так:
$('#mychartdiv').bind('jqplotDataHighlight',
function (ev, seriesIndex, pointIndex, data ) {
var mouseX = ev.pageX; //these are going to be how jquery knows where to put the div that will be our tooltip
var mouseY = ev.pageY;
$('#chartpseudotooltip').html(ticks_array[pointIndex] + ', ' + data[1]);
var cssObj = {
'position' : 'absolute',
'font-weight' : 'bold',
'left' : mouseX + 'px', //usually needs more offset here
'top' : mouseY + 'px'
};
$('#chartpseudotooltip').css(cssObj);
}
);
$('#chartv').bind('jqplotDataUnhighlight',
function (ev) {
$('#chartpseudotooltip').html('');
}
);
Объяснение:
ticks_array
определено ранее, содержит галочковые строки оси x. data
в jqplot содержит текущие данные под мышью в виде массива типа [x-category- #, y-value]. pointIndex
имеет текущую выделенную полосу #. В основном мы будем использовать это, чтобы получить строку галочки.
Затем я создал подсказку так, чтобы она отображалась рядом с курсором мыши. Возможно, вам придется немного вычесть из mouseX
и mouseY
, если этот div находится в других позиционированных контейнерах.
затем вы можете ввести #chartpseudotooltip
в своем CSS. Если вам нужны стили по умолчанию, вы можете просто добавить их в .jqplot-highlighter-tooltip
в jqplot.css.
надеюсь, что это полезно для других!