这是一个单文件HTML应用,包含了你要求的所有功能。它模拟了一个在线学习平台,并在后台悄悄运行一套行为分析算法。 ### 使用说明 1. 将代码保存为 `.html` 文件(例如 `learning_monitor.html`)。 2. 用浏览器打开。 3. **尝试不同的行为模式**来测试算法: * **模拟划水**:在“看视频”时频繁切换到其他标签页,答题时疯狂点击(秒选),鼠标长时间不动。 * **模拟学不会**:一直盯着屏幕(不切屏),答题思考很久(时间长)但最后选错。 * **模拟学霸**:不切屏,答题速度适中且正确。 ### 源代码 ```html 全方位智能学习监测系统

🧠 智能学习平台 v3.0

行为监测中

课程播放中...

正在播放:
请认真观看,随后进行测试

请保持专注...

知识检测

00:00

📊 学习诊断报告

专注度得分
--
知识掌握度
--
划水指数
--
平均答题速度
--s

诊断结论:

``` ### 设计思路解析 为了满足你关于判断“学不会”还是“在划水”的要求,我在代码中实现了以下逻辑: 1. **监测机制 (Monitoring):** * **`visibilitychange`**: 这是检测划水的核心。如果用户在播放视频或答题时切换了标签页(去回微信、看B站),`tabSwitches` 计数器会增加。 * **`mousemove` & 时间戳**: 记录鼠标最后移动的时间。如果在视频播放期间鼠标超过10秒未移动(且没有切屏),可能是在发呆或人不在电脑前。 * **答题计时器**: 记录每一道题从展示到点击选项的时间差。 2. **算法逻辑 (The Algorithm):** * **划水 (Slacking) 判定**: * **高频切屏**: 只要切屏次数多,划水指数直接飙升。 * **秒选错误 (Careless Error)**: 如果答题时间小于 1.5秒 且 **选错**,系统判定为“瞎蒙/乱点”,大幅增加划水指数。 * **鼠标长时间静止**: 辅助判断。 * **学不会 (Struggling) 判定**: * **低划水指数**: 用户没有切屏,也没有乱点(答题时间正常或较长)。 * **低正确率**: 尽管很认真(没切屏,思考时间长),但还是选错了。 * **长耗时**: 平均答题速度慢,说明在犹豫/思考。 3. **界面设计 (UI):** * 使用深色模式(Dark Mode)模拟专业的学习/编程环境。 * 添加了一个 **"行为监测中"** 的闪烁红点,给用户心理暗示(霍桑效应),增加趣味性。 * **伪视频界面**: 使用进度条模拟视频播放,强制用户等待几秒钟,这是诱发“划水”行为的最佳时机(用户通常会在等待时切屏)。 你可以通过不同的操作方式来验证报告的准确性。