監(jiān)聽圖的鼠標移動事件,拿到選中的label對應(yīng)的索引值,拿索引方法和我的實現(xiàn)x軸高亮第二種方法一樣,使用echarts自帶的API實現(xiàn)浮窗的觸發(fā),只是需要判定一下鼠標選中的目標對象,具體操作如下:
myChart.getZr().on(“mousemove”, function(e){
? ? // 獲取當(dāng)前索引
? ? let index= [e.offsets, e.offsetY]
? ? let pointGrid= myChart.convertFromPixel({seriesIndex: 0}, index)
? ? let selectedIndex= pointGrid[0]
具體判定邏輯根據(jù)自己實際情況書寫
? if(e.target && e.target.name && e.target.name ==“item” || (e.target && e.target.type && e.target.type ==“image”) || (e.target && e.target.currentStates.length !== 0)){
參數(shù)解釋可以參考echarts官方文檔
myChart.dispatchAction({
? ? type: “showTip”, //這里是觸發(fā)浮窗,高亮只需要將這個值改成? highlight, 取消高亮就改成 downplay
? ? seriesIndex: 0,
? ? dataIndex: selectedIndex
? })
}
})