You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript判断索引是否为8的倍数及反向逻辑实现问题

解决向上滚动触发逻辑的问题

嘿,我完全get到你的困扰了!你已经顺利实现了向下滚动的触发条件——当currentIndex是8的倍数(8、16、24...)时打印“Go down”,但反向的向上触发逻辑还没搞定对吧?

根据你提到的例子:当currentIndex为12时,下一个向下触发点是16(符合8的倍数逻辑),而向上的触发点应该是9。那咱们可以拆解出向上触发的核心规律:currentIndex是8的倍数加1(比如9=8×1+1,17=8×2+1,25=8×3+1...)。

完整逻辑代码示例

假设你的索引是从1开始计数的(和你描述的例子匹配),可以这样写:

// 向下滚动触发逻辑(你已实现的部分)
if (currentIndex % 8 === 0) {
  console.log("Go down");
}

// 向上滚动触发逻辑(新增的反向逻辑)
if (currentIndex % 8 === 1) {
  console.log("Go up");
}

如果你的索引是从0开始计数的(很多前端场景里会这样),那逻辑需要稍微调整:

  • 向下触发:当索引是每8条的最后一个(7、15、23...),也就是currentIndex % 8 === 7
  • 向上触发:当索引是每8条的第一个(8、16、24...),也就是currentIndex % 8 === 0 && currentIndex !== 0(排除初始的0索引)

对应的代码:

// 向下滚动触发逻辑(适配0开始的索引)
if (currentIndex % 8 === 7) {
  console.log("Go down");
}

// 向上滚动触发逻辑(适配0开始的索引)
if (currentIndex % 8 === 0 && currentIndex !== 0) {
  console.log("Go up");
}

你可以根据自己实际的索引计数方式来选择对应的逻辑,这样就能精准触发向上和向下的操作啦!

内容的提问来源于stack exchange,提问作者pr0b

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:05:44