web蓝桥杯2022省赛真题:冬奥大抽奖

代码及注释:

javascript 复制代码
// TODO:请完善此函数
function rolling() {
  time++; // 转动次数加1
  let roll = time % 8 == 0 ? 8 : time % 8   //循环取1~8
  roll == 1 ? document.querySelector(`.li8`).classList.remove('active') : document.querySelector(`.li${roll-1}`).classList.remove('active') //取消掉前一个元素的active类名
  document.querySelector(`.li${roll}`).classList.add('active')  //当前元素添加的active类名
  clearTimeout(rollTime);
  rollTime = setTimeout(() => {
    window.requestAnimationFrame(rolling); // 进行递归动画
  }, speed);
  // time > times 转动停止
  if (time > times) {
    clearInterval(rollTime);
    time = 0;
    document.querySelector('#award').innerHTML = document.querySelector(`.li${roll}`).innerHTML    // 把当前元素内容放入
    return;
  }
}

知识点:

1.一个周期的循环数值:对周期取余

2.添加类名:element.classList.add('类名')

3.删除类名:element.classList.remove('类名')

4.获取元素document.querySelector('')

相关推荐
admin and root16 小时前
「AI安全篇」实战AntiDebug自动化JS逆向加解密MCP
javascript·人工智能·网络安全·自动化·漏洞挖掘·cnvd·src赏金
前端snow16 小时前
ai agent --- postgreSQL 关系型数据库
前端
卷无止境17 小时前
ECharts:把数据变成故事的可视化利器
前端
Eric_见嘉17 小时前
在职前端 Skill 和 MCP 分享
前端·后端·agent
liangshanbo121518 小时前
面试题:如何优化 Webpack 的打包速度?
前端·webpack·node.js
wengad18 小时前
从 wangEditor 迁到 wangEditor-next
前端·javascript·vue.js
行者-全栈开发19 小时前
【前端/JS框架】CVE-2026-3854:GitHub Enterprise Server X-Stat注入XSS漏洞深度剖析与紧急修复指南
前端·javascript·github
计算机魔术师20 小时前
AMD砸82亿买下李飞飞,这次不卖芯片卖什么?
前端
hzxpaipai20 小时前
杭州企业官网怎么建设?从策划到上线的5步建站方法
运维·服务器·前端·网络
怕浪猫21 小时前
2026年金九银十,我面了22个前端
前端·javascript·面试