|
|
1c15e46ad6
|
feat: 实现 Mermaid 全屏模式
- 在工具栏添加全屏按钮(⛶ 图标)
- 实现全屏模式进入和退出功能
- 全屏模式下保持缩放和拖拽功能可用
- 支持 ESC 键退出全屏
- 退出全屏时恢复图表原始状态(缩放级别和滚动位置)
- 全屏模式下禁用页面滚动
- 添加全屏按钮激活状态样式
- 在清理函数中添加全屏事件监听器清理
- 全屏模式下工具栏始终可见,背景更明显
- 全屏容器占满整个视口,居中显示图表
需求:14.1, 14.2, 14.3, 14.4, 14.5
|
2026-01-25 01:53:31 +08:00 |
|
|
|
1ec2ebc279
|
feat: 优化 Mermaid 响应式设计
- 移动端工具栏适配:按钮放大至 40px,便于触摸操作
- 双指缩放手势:支持双指捏合缩放,以触摸中心为缩放点
- 单指拖拽移动:支持单指拖拽平移图表
- 触摸事件优化:使用 requestAnimationFrame 提升响应速度
- 横屏模式优化:限制图表高度,工具栏更紧凑,隐藏提示文本
- 添加触摸距离和中心点计算辅助函数
- 完善触摸状态管理(touchstart/touchmove/touchend/touchcancel)
需求:16.1, 16.2, 16.3, 16.4, 16.5
|
2026-01-25 01:45:39 +08:00 |
|
|
|
8ba6a15a8a
|
feat: 实现 Mermaid 主题自动同步功能
- 在 setDarkmode() 中触发 argon:theme-switched 事件
- 优化 reRenderCharts() 函数,保持图表缩放级别和滚动位置
- 添加淡入淡出过渡动画,提升视觉体验
- 只替换 SVG 内容,保留容器结构和控制按钮
- 主题切换失败时保持原样,不影响用户体验
需求:17.1, 17.2, 17.3, 17.4, 17.5
|
2026-01-25 01:03:38 +08:00 |
|
|
|
0616150dae
|
feat: 实现 PJAX 内联脚本执行器
- 添加 executeScript() 函数:
- 创建新的 script 元素并复制内容
- 复制所有属性(包括 async、defer)
- 添加错误捕获和日志记录
- 满足需求 4.4, 4.5
- 添加 executeInlineScripts() 函数:
- 提取新页面中的所有 script 标签
- 区分内联脚本和外部脚本
- 按 DOM 顺序执行脚本
- 错误隔离机制(单个脚本失败不影响其他脚本)
- 返回执行结果统计
- 满足需求 4.1-4.4
- 在 pjax:complete 事件中调用:
- 在其他模块初始化之前执行
- 添加错误处理
- 满足需求 4.1-4.5
满足需求:4.1-4.5(内联脚本执行)
|
2026-01-25 00:47:28 +08:00 |
|