修复参数帮助浮层滚动触发
This commit is contained in:
1 parent
09778972a6
commit
e9fc855a1c
1 file changed
+13
-5
@@ -299,12 +299,20 @@ export function ParameterTable({
|
|||||||
};
|
};
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const dismissOnViewportChange = () => dismissHelpPreview();
|
const dismissOnScroll = () => {
|
||||||
window.addEventListener("scroll", dismissOnViewportChange, true);
|
// Programmatic hover may scroll a lower row into view after mouseenter.
|
||||||
window.addEventListener("resize", dismissOnViewportChange);
|
// Keep that row's pending preview alive; mouseleave will still cancel it
|
||||||
|
// if scrolling moves the pointer outside the name cell.
|
||||||
|
if (helpPreviewTimerRef.current === null) {
|
||||||
|
helpPreviewAnchorRef.current = null;
|
||||||
|
setHelpPreview(null);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
window.addEventListener("scroll", dismissOnScroll, true);
|
||||||
|
window.addEventListener("resize", dismissHelpPreview);
|
||||||
return () => {
|
return () => {
|
||||||
window.removeEventListener("scroll", dismissOnViewportChange, true);
|
window.removeEventListener("scroll", dismissOnScroll, true);
|
||||||
window.removeEventListener("resize", dismissOnViewportChange);
|
window.removeEventListener("resize", dismissHelpPreview);
|
||||||
if (helpPreviewTimerRef.current !== null) {
|
if (helpPreviewTimerRef.current !== null) {
|
||||||
window.clearTimeout(helpPreviewTimerRef.current);
|
window.clearTimeout(helpPreviewTimerRef.current);
|
||||||
helpPreviewTimerRef.current = null;
|
helpPreviewTimerRef.current = null;
|
||||||
|
|||||||
Reference in new issue
Block a user