工具栏和工具提示的组合导致工具提示出现闪烁
我有一个用例,我使用工具栏组件, 按钮每个都有工具提示。 当我按入工具栏,然后再次按下退出工具栏时,最后按钮的工具提示会短暂地闪出,而有焦点的按钮的工具提示会在取景口左上方提供.
期待的行为?
当我从工具栏中分出时,最后一个工具提示不应该显示,第一个按钮的工具提示不应该显示在视图端口左上角.
当前的行为
我在 Stackblitz 创建了复制:再复制.
我还做了一个屏幕记录 显示这个问题:
https://GitHub.com/user-attachments/assets/9545fd74-9c56-4142-b848-57cb89be8d82 互联网档案馆的存檔,存档日期2011-12-22.
可能的解决办法
我和大赦国际分析了这个问题,并提出了以下解释和工作。 周围的作品是视觉的,并不解决问题,但至少使其不那么明显.
** 因为**
“ 使用工具栏” Tab 处理器调用“ 焦点管理器。 焦点Last( ) ” , 不返回 `预防缺陷',因此在浏览器将焦点带入前,最后一个控制是集中的。 工具提示的焦点路径立即打开, “ 使用 TooltipTrigger.onFocus” 调用 'state.open( true)', 之后模糊的关闭它, 所以一个打开的,一个关闭的返回 在一个键盘内。
工具提示上覆,然后在触发状态关闭时最终会被提供。 在那种状态下 " 使用OverlayPotions.update Postions " 早在 " !Open " 返回, " 位置 " 是 `位置? 位置? 无效',所以,覆被从未测量。 这才算出 观察到DOM:没有内置位置,没有 " 数据位置 " ,在文件出处被涂上。
节点在节点之后保持活性的方法没有得到确认。 一个候选人是 " 使用ExitAnimation " , 其 " 使用动画 " 的布局效果具有 " 退后,动而上 " 。 三个都稳定了 因此,效果最多在每个出口一次运行,而一个被错过的"on End"会拖住节点.
** 工作**
当“放置”使道具无效时隐藏覆盖,而道具正是 条件“ 挂载但从未测量”。 Aria反应已经将 " 位置 " 作为 " 进入 " 是 " 进入 " 。
时间轴 : <Tooltip class Name {{({放入}}}}}}(放入? "":"隐形")}/>
> 使用`可视性:隐藏',而不是`忽略:无'。 " 更新方案 " 衡量重叠
`GetBoundingClientrect',所以从布局上删除它会给正常位置造成错误
打开路径,其中第一个承诺也有一个框架的“空位”。
> 这抑制了两个演示文稿中错误的工具提示。 它不处理
基础状态, 和最后一个控件的工具提示 仍然短暂地闪出,
因为那个在关闭前是真实的。
https://GitHub.com/user-attachments/assets/d239961f-67a7-4910-a74d-8924f2d24fd
* 背景情况
为了工作,我正在打造一个"暴动"
. . . . . . .内容来源: adobe/react-spectrum