webAI聊天问题列表导航

util6
2025-03-04T10:50:23Z

通过点击按钮显示用户问题列表，支持导航到特定问题、分页功能、正序/倒序切换，智能脉冲式加载历史记录突破懒加载，自动适配暗黑模式，按钮可拖动并保存位置，悬浮窗智能展开方向，无极调整按钮大小，新增NotebookLM支持

webAI聊天问题列表导航

一个强大的用户脚本，为各大 AI 聊天平台添加问题列表导航功能，让你轻松管理和回顾长对话。

✨ 主要特性

🎯 核心功能

问题列表：自动提取并显示所有用户问题

快速导航：点击问题快速跳转到对应位置

分页显示：每页10条，支持快速翻页

排序切换：正序/倒序一键切换

⭐ 新功能（v4.1）

当前浏览位置指示：👁️ 图标实时显示当前浏览的消息

问题收藏：一键收藏重要问题，置顶显示

智能加载：刷新后自动加载历史记录

消息计数：记录消息总数，智能判断是否需要加载

性能优化：收藏管理器缓存机制，减少存储读取

🚀 高级功能

懒加载突破：智能脉冲式滚动，自动加载历史记录

按钮拖动：可拖动到任意位置，自动保存

按钮大小调整：右键菜单无极调整按钮大小

智能展开：悬浮窗根据按钮位置智能选择展开方向

暗黑模式：自动适配系统和网站主题

GM 存储：使用 Tampermonkey API，更安全可靠

🌐 平台支持

支持 13+ 主流 AI 聊天平台：

ChatGPT、Claude

通义千问、豆包、Kimi

ChatGLM、DeepSeek

GitHub Copilot、Microsoft Copilot

腾讯元宝、WPS Copilot

NotebookLM

📦 安装

前置要求

安装浏览器扩展（任选其一）：

Tampermonkey

Violentmonkey

安装脚本

1. 点击脚本链接安装

2. 或从 Greasy Fork 搜索安装

🎮 使用方法

基础操作

1. 打开问题列表

点击右下角的"问题列表"按钮

或拖动按钮到你喜欢的位置

2. 导航到问题

在列表中点击任意问题

页面会平滑滚动到该问题位置

3. 收藏问题 ⭐ 新功能

点击问题右侧的星标按钮（☆）

收藏的问题会显示在列表顶部

再次点击可取消收藏（⭐）

4. 加载更多历史

点击"加载历史"按钮

脚本会自动滚动加载历史记录

再次点击可停止加载

智能加载：刷新后自动检测并加载历史

5. 切换排序

点击"正序/倒序"按钮

在时间正序和倒序之间切换

高级技巧

收藏功能使用场景

场景1：做题讨论

你：这道算法题怎么做？[收藏 ⭐]
AI：可以用动态规划...
你：为什么要这样？
AI：因为...
[随时点击收藏的问题，快速返回题目位置]

场景2：多个重点

收藏多个重要问题
在收藏区域快速切换
无需翻页查找

自定义按钮

拖动位置

按住按钮拖动到任意位置

位置会自动保存

下次访问时自动恢复

调整大小

右键点击按钮

选择"调整按钮大小"

使用滑块调整（50%-200%）

重置设置

右键点击按钮

选择"重置位置"或"重置所有设置"

智能加载历史

自动检测：刷新后自动判断是否需要加载历史

消息计数：记录每个对话的消息总数

智能判断：当前消息数 < 记录的总数 → 自动加载

优化加载：检测到没有新内容后，再尝试2次确认即停止

悬浮窗智能展开

按钮在屏幕上方 → 悬浮窗向上展开

按钮在屏幕下方 → 悬浮窗向下展开

按钮在左侧 → 悬浮窗左对齐

按钮在右侧 → 悬浮窗右对齐

暗黑模式

自动检测系统偏好

自动检测网站主题

无需手动设置

🔧 故障排查

问题列表为空

1. 检查页面是否有对话

确保页面中有聊天消息

2. 查看调试信息

按 F12 打开控制台

查看 [问题列表导航] 开头的调试信息

3. 常见原因

网站更新了页面结构

选择器不匹配

userCondition 过滤太严格

收藏丢失

1. 运行存储测试

打开控制台（F12）

运行 testStorage()

查看 GM API 是否正常工作

2. 检查存储

查看控制台日志

确认收藏是否保存成功

3. 详细排查

查看 收藏丢失问题排查

刷新后需要重新加载历史

正常情况：脚本会自动检测并加载历史

如果没有自动加载：

查看控制台日志

检查消息计数是否正常

手动点击"加载历史"

加载历史不工作

某些网站的懒加载机制较复杂

尝试多次点击"加载历史"

或手动滚动到顶部触发加载

按钮位置异常

右键点击按钮 → 重置位置

或清除浏览器存储

详细排查步骤请查看 故障排查指南

📊 版本历史

v4.1.0 (最新) 🎉

新功能

👁️ 当前浏览位置指示：实时显示当前正在浏览的消息

列表中显示眼睛图标标记当前位置

蓝色左边框和背景高亮

滚动页面时自动更新

点击跳转后立即更新

性能优化

⚡ 收藏管理器缓存：添加缓存机制，避免频繁读取存储

🔇 减少日志输出：移除不必要的调试日志，提升性能

🎯 优化调用次数：减少重复的 isFavorite 调用

v4.0.0

重大更新

⭐ 问题收藏功能：一键收藏重要问题，置顶显示

🔄 智能自动加载：刷新后自动检测并加载历史记录

📊 消息计数管理：记录每个对话的消息总数

⚡ 优化加载逻辑：智能检测，不浪费时间

🔐 GM API 存储：使用 Tampermonkey API，更安全可靠

🎨 按钮工厂：统一的按钮创建，代码更简洁

🐛 修复 Bug：修复存储初始化顺序问题

v3.6.1

修复悬浮窗展开方向判断错误

v3.6.0

新增悬浮窗智能展开方向

v3.5.0

新增按钮拖动功能

位置自动保存

v3.4.0

新增暗黑模式支持

v3.3.0

新增智能脉冲式加载历史记录

查看完整更新日志：更新日志.md

🧪 调试功能

存储测试

在控制台运行：

testStorage()

会测试：

GM API 是否支持

写入是否成功

读取是否正确

删除是否有效

当前收藏状态

查看日志

打开控制台（F12），查看以下日志：

[存储适配器] GM API 支持: ✅ 是
[收藏管理器] 读取收藏: {pageId: "/chat/xxx", 收藏数量: 2}
[消息计数] 检查是否需要加载历史: {当前消息数: 30, 记录的总数: 50}
[历史加载] 第1次: 新增 10 个问题，总计 40 个

📚 文档

配置重构说明 - 代码架构说明

按钮工厂使用示例 - 按钮组件化

收藏功能使用说明 - 收藏功能详解

消息计数功能说明 - 智能加载原理

历史加载优化说明 - 加载优化详解

存储优化说明 - GM API 使用

故障排查指南 - 问题排查

🤝 贡献

报告问题

遇到问题请提供：

网站名称和 URL

控制台调试信息截图

浏览器和脚本管理器版本

testStorage() 的输出结果

功能建议

欢迎提出新功能建议！

添加新平台支持

如果你想添加对新平台的支持：

1. 在控制台检查页面结构

2. 确定消息选择器

3. 编写 userCondition 逻辑

4. 测试并提交

📄 许可证

MIT License - 详见 LICENSE 文件

🙏 致谢

感谢所有用户的反馈和建议！

🌟 特别感谢

感谢所有用户的反馈和建议，让这个脚本变得更好！

📈 统计

支持平台: 13+

代码行数: 1900+

功能模块: 10+

文档页数: 15+

作者: yutao
版本: 4.1.0
更新日期: 2025-12-06
许可证: MIT License