R Shiny:实现服务端Tooltip点击显示/点击图标或外部隐藏
需求与问题详情
需求说明
需实现:点击信息图标时显示tooltip弹窗,再次点击该图标或点击应用任意其他区域时隐藏tooltip,交互逻辑类似Stack Overflow左侧面板的tooltip。
已尝试方案
- thothal提供的方案接近需求,但存在未解决的异常(详见编辑补充异常)
- 参考方案通过
data-trigger="click"实现点击图标切换tooltip,但无法实现点击外部隐藏 - 参考另一方案实现了点击图标显示、点击外部隐藏,但无法实现再次点击图标隐藏
应用特殊场景
本问题是此前已解决问题的延伸,实际应用存在以下之前MRE未覆盖的场景:
- Tooltip在服务端(server-side)创建
- 提示文本来自reactive object
- 部分提示文本包含HTML元素
当前代码问题
提供的MRE代码中,tooltip当前行为:
- 首次点击图标时显示
- 点击应用其他区域时隐藏
- 再次点击图标时无法隐藏
编辑补充异常
thothal的方案虽满足交互逻辑,但存在新异常:首次点击图标前,hover图标时会显示tooltip的HTML代码而非渲染后的内容。
内容的提问来源于stack exchange,提问作者djbetancourt
相关产品推荐
相关产品推荐

