我已找到导致“无法正确下滑与翻页”的根本原因:代码中调用了一个未定义的函数 `getActiveScroller`,导致滚动事件处理中断。此外,滚动边界的检测逻辑需要进一步放宽容差,以适配不同设备的触控精度。 ### 修复与优化计划 1. **修复运行时错误** - 移除未定义的 `getActiveScroller` 调用。 - 改用更稳健的 DOM 查询方式:为每个页面容器添加 `data-index` 属性,通过当前索引精确获取对应的滚动容器。 2. **重构滚动边界检测(解决“卡顿”与“无法翻页”)** - **增加容差**:将滚动到底/到顶的判断容差从 2px 增加到 5px,解决高分屏或缩放下的精度问题。 - **智能识别内容高度**:明确区分“长内容页面”与“短内容页面”。 - **短页面**(无滚动条):直接允许向上/向下翻页。 - **长页面**:仅在确实滚动到边缘时才触发翻页。 - **精准拦截**:仅在**确认要触发翻页**时才调用 `e.preventDefault()`,确保在页面中间时完全保留原生滚动的流畅度。 3. **优化翻页性能** - 保持当前的 GPU 加速样式(will-change)。 - 确保翻页触发后的“冷却时间”逻辑正确,防止一次滑动跳多页。 我将直接修改 `App.js` 实现上述逻辑,无需额外创建文件。