У меня есть панель Recharts BarChart с настраиваемой подсказкой, положение которой контролируется вручную.
Когда пользователь наводит указатель мыши на всплывающую подсказку, я замораживаю ее положение, чтобы она не двигалась.
Однако, когда всплывающая подсказка достаточно высока, чтобы перекрывать несколько столбцов, перемещение мыши внутри всплывающей подсказки приводит к изменению содержимого всплывающей подсказки, поскольку Recharts обнаруживает наведение курсора на другую нижнюю панель.
Ожидаемое поведение:
При наведении курсора на всплывающую подсказку и положение, и содержимое должны оставаться заблокированными.
Фактическое поведение:
Положение остается фиксированным, но содержимое всплывающей подсказки обновляется при вертикальном перемещении мыши внутри всплывающей подсказки.
"use client";
import { useState } from "react";
import { BarChart, Bar, XAxis, YAxis, Tooltip } from "recharts";
const data = [
{ name: "A", value: 400 },
{ name: "B", value: 300 },
{ name: "C", value: 200 },
];
export default function Chart() {
const [pos, setPos] = useState(null);
const [hovered, setHovered] = useState(false);
return (
{
if (!e.isTooltipActive || hovered) return;
setPos({ x: e.chartX, y: e.chartY });
}}
>
active ? (
setHovered(true)}
onMouseLeave={() => setHovered(false)}
style={{
background: "white",
border: "1px solid black",
height: 120, // overlaps multiple bars
padding: 8,
}}
>
{payload?.[0]?.payload.name}
) : null
}
/>
);
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... e-tool-tip
Как управлять рендерингом контента во всплывающей подсказке? ⇐ Javascript
Форум по Javascript
-
Anonymous
1768824747
Anonymous
У меня есть панель Recharts BarChart с настраиваемой подсказкой, положение которой контролируется вручную.
Когда пользователь наводит указатель мыши на всплывающую подсказку, я замораживаю ее положение, чтобы она не двигалась.
Однако, когда всплывающая подсказка достаточно высока, чтобы перекрывать несколько столбцов, перемещение мыши внутри всплывающей подсказки приводит к изменению содержимого всплывающей подсказки, поскольку Recharts обнаруживает наведение курсора на другую нижнюю панель.
Ожидаемое поведение:
При наведении курсора на всплывающую подсказку и положение, и содержимое должны оставаться заблокированными.
Фактическое поведение:
Положение остается фиксированным, но содержимое всплывающей подсказки обновляется при вертикальном перемещении мыши внутри всплывающей подсказки.
"use client";
import { useState } from "react";
import { BarChart, Bar, XAxis, YAxis, Tooltip } from "recharts";
const data = [
{ name: "A", value: 400 },
{ name: "B", value: 300 },
{ name: "C", value: 200 },
];
export default function Chart() {
const [pos, setPos] = useState(null);
const [hovered, setHovered] = useState(false);
return (
{
if (!e.isTooltipActive || hovered) return;
setPos({ x: e.chartX, y: e.chartY });
}}
>
active ? (
setHovered(true)}
onMouseLeave={() => setHovered(false)}
style={{
background: "white",
border: "1px solid black",
height: 120, // overlaps multiple bars
padding: 8,
}}
>
{payload?.[0]?.payload.name}
) : null
}
/>
);
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79871162/how-to-control-the-content-rendering-within-the-tool-tip[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия