tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
},
backgroundColor: 'rgba(255, 255, 255, 0.8)',
position: function (pos, params, el, elRect, size) {
var obj = { top: 10 };
obj[['left', 'right'][+(pos[0] < size.viewSize[0] / 2)]] = 30;
return obj;
},
extraCssText: 'width: 170px'
},
position: function (pos, params, el, elRect, size) {
var obj = { top: 10 };
obj[['left', 'right'][+(pos[0] < size.viewSize[0] / 2)]] = 30;
return obj;
},
- 首先,创建一个对象
obj
,并设置初始属性 top
为 10。 - 接着,根据条件动态设置对象
obj
的 left
或 right
属性。这里使用了一个三元表达式 +(pos[0] < size.viewSize[0] / 2)
来判断条件。如果 pos[0]
小于 size.viewSize[0] / 2
,则取 ['left', 'right'][0]
,即取数组中索引为 0 的元素,也就是 'left'
;如果不满足条件,则取 ['left', 'right'][1]
,即取数组中索引为 1 的元素,也就是 'right'
。然后将属性值设置为 30。 - 最后,返回包含动态设置属性的对象
obj
。