两个复选框只管声音
知行课堂的学员想课后回看操作演示,祁湘打算把本地软件从头点一遍录下来。界面只有"麦克风"与"系统声音"两个复选框,默认都不勾,这次也一个没勾。它们只管要不要并进人声、要不要带系统音:勾前者会额外触发 getUserMedia({audio:true}),勾后者把 audio 传进 getDisplayMedia。计时停在 "00:00",这一步本就不该让它动。

授权弹窗要人点分享
"开始录制"是唯一入口,点击必须由本人完成,脚本自己调不起屏幕共享。点下去工具调 getDisplayMedia(...),浏览器弹出系统共享选择器,等选屏幕、窗口或标签页再按"分享"。祁湘点完选择器确实弹了,可没人按分享,那个 Promise 既不 resolve 也不 reject,go() 从未执行。btnStart.disabled = true 本该在 go() 里锁按钮,没跑就没锁,可以反复点、反复弹框。

计时是信号灯
计时 clock 唯一更新点是 tick(),而 tick() 只在 go() 里启动,所以它是"录制真起来了"的信号灯,不是按钮回执;预览窗口也得等授权成功的流进来才有画面。本次 "00:00" 一直不动,也没有画面。go() 没跑,计时器就没起,数字永远停在开局。别把 00:00 读成录了 0 秒,更别去描述视频内容,这次压根没录成。

提示没变就是卡住
提示行是界面唯一的文字反馈,授权前是操作指引,只有 catch 分支才把它改成报错。两条路径都没走,提示就停在让去系统选择框选屏幕、窗口或标签页再按分享那句原话,没变成"录制中",也没报错。工具在等授权,不会超时也不会取消。按钮"开始录制""暂停""停止并下载"原样摆着。得回选择器亲手选中窗口并点分享,go() 跑起来计时才走。

企业知识网( www.qiyezhishi.com )提供的结果为参考性内容,不构成法律、税务或投资建议。具体请以主管部门口径与最新法规为准。