Skip to content

Commit

Permalink
Fix z2 and cache on hover.
Browse files Browse the repository at this point in the history
  • Loading branch information
100pah committed Jan 2, 2019
1 parent 679033d commit edd23af
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 4 deletions.
4 changes: 1 addition & 3 deletions src/util/graphic.js
Original file line number Diff line number Diff line change
Expand Up @@ -376,15 +376,13 @@ function doSingleLeaveHover(el) {
// `setStyle` but not `extendFrom(stl, true)`.
el.setStyle(normalStl);
applyDefaultTextStyle(style);
el.__cachedNormalStl = null;
}
// `__cachedNormalZ2` will not be reset if calling `setElementHoverStyle`
// when `el` is on emphasis state. So here by comparing with 1, we try
// hard to make the bug case rare.
var normalZ2 = el.__cachedNormalZ2;
if (el.z2 - normalZ2 === Z2_LIFT_VALUE) {
if (normalZ2 != null && el.z2 - normalZ2 === Z2_LIFT_VALUE) {
el.z2 = normalZ2;
el.__cachedNormalZ2 = null;
}
}
}
Expand Down
36 changes: 35 additions & 1 deletion test/hoverStyle.html
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@

<div id="mainb1"></div>
<div id="mainb2"></div>
<div id="mainb3"></div>

<div id="main0"></div>
<div id="main1"></div>
Expand Down Expand Up @@ -84,7 +85,9 @@

function genInfo(zrRefreshTimestamp) {
infoEl.innerHTML = [
useHoverLayer ? 'Using HoverLayer' : 'NOT using HoverLayer',
'<span style="color:yellow">'
+ (useHoverLayer ? 'Using HoverLayer' : 'NOT using HoverLayer')
+ '</span>',
'hoverLayerThreshold: ' + hoverLayerThreshold,
'zr refresh base layer at: <span style="color:yellow">' + (zrRefreshTimestamp || null) + '</span>'
].join('<br>');
Expand Down Expand Up @@ -231,6 +234,37 @@



<script>
require(['echarts'], function (echarts) {
var option = {
hoverLayerThreshold: hoverLayerThreshold,
xAxis: {
},
yAxis: {
},
series: [{
type: 'scatter',
symbolSize: 100,
data: [
{value: [0, 0], itemStyle: {color: 'blue'}},
{value: [0, 1], itemStyle: {color: 'red'}}
]
}]
};

var chart = testHelper.create(echarts, 'mainb3', {
title: [
'hover the blue symbol, the z2 can be top',
'unhover, **z2 should be back** to bottom'
],
option: option,
height: 200
});
});
</script>



<script>
require(['echarts'], function (echarts) {
var option = {
Expand Down

0 comments on commit edd23af

Please sign in to comment.