diff --git a/core/core-frontend/src/components/visualization/ViewTrackBar.vue b/core/core-frontend/src/components/visualization/ViewTrackBar.vue index 50793c08f5..85722f2827 100644 --- a/core/core-frontend/src/components/visualization/ViewTrackBar.vue +++ b/core/core-frontend/src/components/visualization/ViewTrackBar.vue @@ -56,21 +56,16 @@ const state = reactive({ } }) const visibleChange = isVisible => { - const tooltips = document.querySelectorAll('.g2-tooltip') - if (tooltips) { - tooltips.forEach(tooltip => { - if (isVisible) { - // 当下拉菜单显示时,添加隐藏样式 - tooltip.classList.add('hidden-tooltip') - } else { - // 当下拉菜单隐藏时,移除隐藏样式 - tooltip.classList.remove('hidden-tooltip') - } - }) - } + document.querySelectorAll('.g2-tooltip')?.forEach(tooltip => { + if (tooltip.id?.includes(chartId.value)) { + tooltip.classList.toggle('hidden-tooltip', isVisible) + } + }) } - -const trackButtonClick = () => { +// 添加图表标识,用于区分不同图表的 tooltip +const chartId = ref(null) +const trackButtonClick = (id?: string) => { + chartId.value = id setTimeout(() => { trackButton.value.click() }, 50) diff --git a/core/core-frontend/src/custom-component/indicator/DeIndicator.vue b/core/core-frontend/src/custom-component/indicator/DeIndicator.vue index 8afd5f59df..71b68868fc 100644 --- a/core/core-frontend/src/custom-component/indicator/DeIndicator.vue +++ b/core/core-frontend/src/custom-component/indicator/DeIndicator.vue @@ -515,7 +515,7 @@ const action = param => { state.trackBarStyle.top = barStyleTemp.top + 'px' } - viewTrack.value.trackButtonClick() + viewTrack.value.trackButtonClick(view.value.id) } } diff --git a/core/core-frontend/src/views/chart/components/views/components/ChartComponentG2Plot.vue b/core/core-frontend/src/views/chart/components/views/components/ChartComponentG2Plot.vue index c46a6ea329..ec05554f75 100644 --- a/core/core-frontend/src/views/chart/components/views/components/ChartComponentG2Plot.vue +++ b/core/core-frontend/src/views/chart/components/views/components/ChartComponentG2Plot.vue @@ -494,7 +494,7 @@ const action = param => { state.trackBarStyle.top = trackBarY + 'px' } - viewTrack.value.trackButtonClick() + viewTrack.value.trackButtonClick(view.value.id) } } diff --git a/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue b/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue index e66cb4bc59..d0cd061829 100644 --- a/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue +++ b/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue @@ -402,7 +402,7 @@ const action = param => { state.trackBarStyle.top = barStyleTemp.top + 'px' } - viewTrack.value.trackButtonClick() + viewTrack.value.trackButtonClick(view.value.id) } } const appStore = useAppStoreWithOut()