提交 aee0b1a0 编写于 作者: S susiwen8

Tooltip style

上级 4399d1f5
...@@ -26,7 +26,7 @@ import { ...@@ -26,7 +26,7 @@ import {
initLabel, initLabel,
removeElementWithFadeOut removeElementWithFadeOut
} from '../../util/graphic'; } from '../../util/graphic';
import { getECData } from "../../util/ecData"; import { getECData } from '../../util/ecData';
import { enableHoverEmphasis, setStatesStylesFromModel } from '../../util/states'; import { enableHoverEmphasis, setStatesStylesFromModel } from '../../util/states';
import { setLabelStyle, getLabelStatesModels } from '../../label/labelStyle'; import { setLabelStyle, getLabelStatesModels } from '../../label/labelStyle';
import Path, { PathProps } from 'zrender/src/graphic/Path'; import Path, { PathProps } from 'zrender/src/graphic/Path';
......
...@@ -210,8 +210,7 @@ class MapSeries extends SeriesModel<MapSeriesOption> { ...@@ -210,8 +210,7 @@ class MapSeries extends SeriesModel<MapSeriesOption> {
+ encodeHTML(name) + ': ' + formattedValue; + encodeHTML(name) + ': ' + formattedValue;
} }
return `<span style="font-size:12px;color:#6e7079;">${seriesNames.join(', ')}</span>` return `<div style="font-size:12px;color:#6e7079;">${seriesNames.join(', ')}</div>`
+ (seriesNames.length ? '<br />' : '')
+ concatTooltipHtml(name, formattedValue); + concatTooltipHtml(name, formattedValue);
} }
......
...@@ -138,11 +138,12 @@ class RadarSeriesModel extends SeriesModel<RadarSeriesOption> { ...@@ -138,11 +138,12 @@ class RadarSeriesModel extends SeriesModel<RadarSeriesOption> {
return encodeHTML(axis.name) + ': ' + val; return encodeHTML(axis.name) + ': ' + val;
}).join('\n'); }).join('\n');
} }
return `<span style="font-size:12px;color:#6e7079;>${encodeHTML(name === '' ? this.name : name)}</span>` return '<div style="font-size:12px;color:#6e7079;line-height:1">'
+ '<br/>' + encodeHTML(name === '' ? this.name : name)
+ '</div>'
+ zrUtil.map(indicatorAxes, function (axis) { + zrUtil.map(indicatorAxes, function (axis) {
const val = data.get(data.mapDimension(axis.dim), dataIndex); const val = data.get(data.mapDimension(axis.dim), dataIndex);
return '<div style="margin: 8px 0 0;">' return '<div style="margin: 11px 0 0;line-height:1">'
+ concatTooltipHtml(axis.name, val) + concatTooltipHtml(axis.name, val)
+ '</div>'; + '</div>';
}).join(''); }).join('');
......
...@@ -246,7 +246,9 @@ class SankeySeriesModel extends SeriesModel<SankeySeriesOption> { ...@@ -246,7 +246,9 @@ class SankeySeriesModel extends SeriesModel<SankeySeriesOption> {
if (renderMode === 'richText') { if (renderMode === 'richText') {
return encodeHTML(rawDataOpt.source + ' -- ' + rawDataOpt.target) + params.value; return encodeHTML(rawDataOpt.source + ' -- ' + rawDataOpt.target) + params.value;
} }
return concatTooltipHtml(rawDataOpt.source + ' -- ' + rawDataOpt.target, params.value || ''); return '<div style="line-height:1">'
+ concatTooltipHtml(rawDataOpt.source + ' -- ' + rawDataOpt.target, params.value || '')
+ '</div>';
} }
else if (dataType === 'node') { else if (dataType === 'node') {
const node = this.getGraph().getNodeByIndex(dataIndex); const node = this.getGraph().getNodeByIndex(dataIndex);
...@@ -255,7 +257,9 @@ class SankeySeriesModel extends SeriesModel<SankeySeriesOption> { ...@@ -255,7 +257,9 @@ class SankeySeriesModel extends SeriesModel<SankeySeriesOption> {
if (renderMode === 'richText') { if (renderMode === 'richText') {
return encodeHTML(value ? name : '') + ': ' + (value || ''); return encodeHTML(value ? name : '') + ': ' + (value || '');
} }
return concatTooltipHtml(value ? name : '', value || ''); return '<div style="line-height:1">'
+ concatTooltipHtml(value ? name : '', value || '')
+ '</div>';
} }
return super.formatTooltip(dataIndex, multipleSeries, dataType, renderMode); return super.formatTooltip(dataIndex, multipleSeries, dataType, renderMode);
} }
......
...@@ -305,7 +305,7 @@ class ThemeRiverSeriesModel extends SeriesModel<ThemeRiverSeriesOption> { ...@@ -305,7 +305,7 @@ class ThemeRiverSeriesModel extends SeriesModel<ThemeRiverSeriesOption> {
if (renderMode === 'richText') { if (renderMode === 'richText') {
return encodeHTML(htmlName) + ': ' + htmlValue; return encodeHTML(htmlName) + ': ' + htmlValue;
} }
return '<div style="margin: 8px 0 0;">' return '<div style="margin: 11px 0 0;line-height:1">'
+ concatTooltipHtml(htmlName, htmlValue) + concatTooltipHtml(htmlName, htmlValue)
+ '</div>'; + '</div>';
} }
......
...@@ -224,7 +224,9 @@ class TreeSeriesModel extends SeriesModel<TreeSeriesOption> { ...@@ -224,7 +224,9 @@ class TreeSeriesModel extends SeriesModel<TreeSeriesOption> {
return encodeHTML(name) + ': ' + ((isNaN(value as number) || value == null) ? '' : value); return encodeHTML(name) + ': ' + ((isNaN(value as number) || value == null) ? '' : value);
} }
return concatTooltipHtml(name, (isNaN(value as number) || value == null) ? '' : value); return '<div style="line-height:1">'
+ concatTooltipHtml(name, (isNaN(value as number) || value == null) ? '' : value)
+ '</div>';
} }
static defaultOption: TreeSeriesOption = { static defaultOption: TreeSeriesOption = {
......
...@@ -395,7 +395,9 @@ class TreemapSeriesModel extends SeriesModel<TreemapSeriesOption> { ...@@ -395,7 +395,9 @@ class TreemapSeriesModel extends SeriesModel<TreemapSeriesOption> {
if (renderMode === 'richText') { if (renderMode === 'richText') {
return encodeHTML(name) + ': ' + formattedValue; return encodeHTML(name) + ': ' + formattedValue;
} }
return concatTooltipHtml(name, formattedValue); return '<div style="line-height:1">'
+ concatTooltipHtml(name, formattedValue)
+ '</div>';
} }
/** /**
......
...@@ -24,7 +24,7 @@ import GlobalModel from '../../model/Global'; ...@@ -24,7 +24,7 @@ import GlobalModel from '../../model/Global';
import ExtensionAPI from '../../ExtensionAPI'; import ExtensionAPI from '../../ExtensionAPI';
import GeoModel from '../../coord/geo/GeoModel'; import GeoModel from '../../coord/geo/GeoModel';
import { Payload, ZRElementEvent, ECEventData } from '../../util/types'; import { Payload, ZRElementEvent, ECEventData } from '../../util/types';
import { getECData } from "../../util/ecData"; import { getECData } from '../../util/ecData';
import { enterSelect, leaveSelect } from '../../util/states'; import { enterSelect, leaveSelect } from '../../util/states';
class GeoView extends ComponentView { class GeoView extends ComponentView {
......
...@@ -31,7 +31,7 @@ import GlobalModel from '../../model/Global'; ...@@ -31,7 +31,7 @@ import GlobalModel from '../../model/Global';
import MarkerModel from './MarkerModel'; import MarkerModel from './MarkerModel';
import ExtensionAPI from '../../ExtensionAPI'; import ExtensionAPI from '../../ExtensionAPI';
import { HashMap, isFunction, map, defaults, filter, curry } from 'zrender/src/core/util'; import { HashMap, isFunction, map, defaults, filter, curry } from 'zrender/src/core/util';
import { getECData } from "../../util/ecData"; import { getECData } from '../../util/ecData';
import { getVisualFromData } from '../../visual/helper'; import { getVisualFromData } from '../../visual/helper';
import { ZRColor } from '../../util/types'; import { ZRColor } from '../../util/types';
......
...@@ -209,16 +209,16 @@ abstract class MarkerModel<Opts extends MarkerOption = MarkerOption> extends Com ...@@ -209,16 +209,16 @@ abstract class MarkerModel<Opts extends MarkerOption = MarkerOption> extends Com
const formattedValue = zrUtil.isArray(value) const formattedValue = zrUtil.isArray(value)
? zrUtil.map(value, addCommas).join(', ') : addCommas(value as number); ? zrUtil.map(value, addCommas).join(', ') : addCommas(value as number);
const name = encodeHTML(data.getName(dataIndex)); const name = encodeHTML(data.getName(dataIndex));
let html = encodeHTML(this.name); let html = `<div style="font-size:12px;line-height:1;margin:0 0 8px 0;">${encodeHTML(this.name)}</div>`;
if (value != null || name) { if (value != null || name) {
html += renderMode === 'html' ? '<br />' : '\n'; html += renderMode === 'html' ? '' : '\n';
} }
if (name) { if (name) {
html += name; html += `<div style="line-height:1"><span style="font-size:12px;color:#6e7079;">${name}</span>`;
} }
if (value != null) { if (value != null) {
html = renderMode === 'html' html = renderMode === 'html'
? concatTooltipHtml(html, formattedValue, true) ? concatTooltipHtml(html, formattedValue, true) + (name ? '</div>' : '')
: (html + formattedValue); : (html + formattedValue);
} }
return html; return html;
......
...@@ -129,7 +129,7 @@ class TooltipModel extends ComponentModel<TooltipOption> { ...@@ -129,7 +129,7 @@ class TooltipModel extends ComponentModel<TooltipOption> {
// Tooltip inside padding, default is 5 for all direction // Tooltip inside padding, default is 5 for all direction
// Array is allowed to set up, right, bottom, left, same with css // Array is allowed to set up, right, bottom, left, same with css
padding: [4, 10, 10], padding: [6, 10, 10],
// Extra css text // Extra css text
extraCssText: '', extraCssText: '',
......
...@@ -626,8 +626,8 @@ class TooltipView extends ComponentView { ...@@ -626,8 +626,8 @@ class TooltipView extends ComponentView {
( (
firstLine firstLine
? ( ? (
'<span style="font-size:12px;color:#6e7079;">' '<div style="font-size:12px;color:#6e7079;line-height:1">'
+ formatUtil.encodeHTML(firstLine) + '</span>' + formatUtil.encodeHTML(firstLine) + '</div>'
+ newLine + newLine
) )
: '' : ''
......
...@@ -38,7 +38,7 @@ import { ...@@ -38,7 +38,7 @@ import {
} from '../util/types'; } from '../util/types';
import {parseDate} from '../util/number'; import {parseDate} from '../util/number';
import {isDataItemOption} from '../util/model'; import {isDataItemOption} from '../util/model';
import { getECData } from "../util/ecData"; import { getECData } from '../util/ecData';
import { PathStyleProps } from 'zrender/src/graphic/Path'; import { PathStyleProps } from 'zrender/src/graphic/Path';
import type Graph from './Graph'; import type Graph from './Graph';
import type Tree from './Tree'; import type Tree from './Tree';
......
...@@ -26,7 +26,7 @@ import { ...@@ -26,7 +26,7 @@ import {
updateProps, updateProps,
initProps initProps
} from '../util/graphic'; } from '../util/graphic';
import { getECData } from "../util/ecData"; import { getECData } from '../util/ecData';
import ExtensionAPI from '../ExtensionAPI'; import ExtensionAPI from '../ExtensionAPI';
import { import {
ZRTextAlign, ZRTextAlign,
......
...@@ -553,15 +553,19 @@ class SeriesModel<Opt extends SeriesOption = SeriesOption> extends ComponentMode ...@@ -553,15 +553,19 @@ class SeriesModel<Opt extends SeriesOption = SeriesOption> extends ComponentMode
colorStr = zrUtil.isString(colorEl) ? colorEl : colorEl.content; colorStr = zrUtil.isString(colorEl) ? colorEl : colorEl.content;
let html = ''; let html = '';
if (!isRichText) { if (!isRichText) {
seriesName = seriesName ? `<span style="font-size:12px;color:#6e7079;">${seriesName}</span>` : ''; seriesName = seriesName
? !multipleSeries
? `<div style="font-size:12px;color:#6e7079;line-height:1">${seriesName}</div>`
: `<span style="font-size:12px;color:#6e7079;line-height:1">${seriesName}</span>`
: '';
html = !multipleSeries html = !multipleSeries
? seriesName + (seriesName ? '<br/>' : '') + `<div style="margin: ${seriesName ? 8 : 0}px 0 0;">` ? seriesName + `<div style="margin: ${seriesName ? 8 : 0}px 0 0;line-height:1">`
+ colorStr + colorStr
+ (name + (name
? `<span style="font-size:12px;color:#6e7079;">${encodeHTML(name)}</span>${content}` ? `<span style="font-size:12px;color:#6e7079;">${encodeHTML(name)}</span>${content}`
: content : content
) + '</div>' ) + '</div>'
: `<div style="margin: 8px 0 0;">${colorStr}${seriesName}${content}</div>`; : `<div style="margin: 11px 0 0;line-height:1;">${colorStr}${seriesName}${content}</div>`;
} }
else { else {
html = !multipleSeries html = !multipleSeries
......
...@@ -68,7 +68,7 @@ export function encodeHTML(source: string): string { ...@@ -68,7 +68,7 @@ export function encodeHTML(source: string): string {
export function concatTooltipHtml(html: string, value: unknown, dontEncodeHtml?: boolean): string { export function concatTooltipHtml(html: string, value: unknown, dontEncodeHtml?: boolean): string {
return (dontEncodeHtml ? html : `<span style="font-size:12px;color:#6e7079;">${encodeHTML(html)}</span>`) return (dontEncodeHtml ? html : `<span style="font-size:12px;color:#6e7079;">${encodeHTML(html)}</span>`)
+ (value ? '<span style="float:right;margin-left:20px;color:#464646;font-weight:900;font-size:14px";>' : '') + (value ? '<span style="float:right;margin-left:20px;color:#464646;font-weight:900;font-size:14px;">' : '')
+ encodeHTML(value as string) + encodeHTML(value as string)
+ (value ? '</span>' : ''); + (value ? '</span>' : '');
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册