活跃日历1.0.3
v1.0.3 - 修复 Tooltip 显示位置异常
本次更新主要修复了活跃度日历在部分 Halo 主题下,鼠标悬停日期时详情浮窗(Tooltip)出现严重位置偏移的问题,提升了插件的兼容性和交互体验。
✨ 修复内容
🐞 修复 Tooltip 位置偏移
修复了部分 Halo 主题(使用 transform、filter 等 CSS 属性)导致 Tooltip 坐标计算错误的问题。
现在鼠标悬停任意日期方块时:
- Tooltip 将准确显示在当前日期格附近;
- 不再出现漂移到页面其它位置的情况;
- 不受主题布局影响。
🎯 优化 Tooltip 定位逻辑
重新实现了 Tooltip 的显示方式:
- Tooltip 挂载至页面
body层; - 使用浏览器视口坐标进行定位;
- 自动计算最佳显示位置。
新增边界保护:
- 靠近页面顶部时自动显示在日期格下方;
- 靠近左右边缘时自动调整位置;
- 防止 Tooltip 超出浏览器可视区域。
🚀 保留已有功能
本次更新不会影响已有功能:
- GitHub 风格创作活跃度日历
- 实时活跃度统计
- 历史活跃度回溯(v1.0.2)
- 每日活跃颜色深浅显示
- 用户活跃信息展示
🔧 技术调整
- 重构 Tooltip 定位逻辑;
- Tooltip 从组件内部迁移至
document.body; - 统一使用
getBoundingClientRect()进行坐标计算; - 增加浏览器边界检测与自动修正;
- 提升不同 Halo 主题之间的兼容性。