我正在使用带有多系列数据的flot图表。我想更改Flot Chart中的工具提示文本颜色。 我正在使用此代码:
$("#placeholder").bind("plothover", function (event, pos, item) {
if (item) {
$("#tooltip").remove();
var hoverSeries = item.series;
var x = item.datapoint[0],
y = item.datapoint[1];
var strTip = x + " / " + y + " for " + item.series.label;
var allSeries = plot.getData();
$.each(allSeries, function(i,s){
if (s == hoverSeries) return;
$.each(s.data, function(j,p){
if (p[0] == x){
strTip += "</br>" + p[0] + " / " + p[1] + " for " + s.label;
}
});
});
showTooltip(item.pageX, item.pageY, strTip);
}
});
任何一个用于提取工具提示的颜色?
答案 0 :(得分:2)
请使用此字符串代替您的strTip。
strTip += "</br><span style=\"color:"+s.color+";\">" + p[0] + " / " + p[1] + " for " + s.label+"</span>";
使用此字符串,您将获得与数据系列颜色相同的Tooltip文本颜色。 在这里,我在单个flotchart中使用了4个数据系列。 [四系列工具提示] [1]
答案 1 :(得分:2)
Flot图表支持ToolTip中的HTML标记
您可以轻松使用html标记:<span>
Flot chart ToolTip轻松支持HTML标记。
使用<span>
标记,您可以使用s.clor
样式。
喜欢这个js。
$("#placeholder").bind("plothover", function (event, pos, item) {
if (item) {
$("#tooltip").remove();
var hoverSeries = item.series;
var x = item.datapoint[0],
y = item.datapoint[1];
var strTip = "<span style=\"color:" + item.series.color + ";\""+x + " / " + y + " for " + item.series.label + "</span>";
var allSeries = plot.getData();
$.each(allSeries, function(i,s){
if (s == hoverSeries) return;
$.each(s.data, function(j,p){
if (p[0] == x){
strTip += "</br><span style=\"color:" + s.color + ";\"" + p[0] + " / " + p[1] + " for " + s.label + "</span>";
}
});
});
showTooltip(item.pageX, item.pageY, strTip);
}
});
很明显,我在item.series.color
工具提示字符串中使用了s.color
和strTip