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

JS石头剪刀布应用:生成按钮仅生效一次问题求助

石头剪刀布按钮仅首次点击生效的问题解决

问题根源很明确:你把随机生成选项的代码写在了app函数外面,页面加载时就会执行一次,生成两个固定的表情。之后每次点击按钮,只是把这两个固定值重复渲染到页面上,自然不会重新随机。

修改后的JavaScript代码

let options = ['👊', '✋', '✌'];
let userBoard = document.getElementById('userBoard');
let computerBoard = document.getElementById('computerBoard');

let app = function () {
    // 每次点击按钮时重新生成随机选项
    let generatedOptions = options[Math.floor(Math.random() * options.length)];
    let generatedOptions1 = options[Math.floor(Math.random() * options.length)];
    userBoard.innerHTML = generatedOptions;
    computerBoard.innerHTML = generatedOptions1;
}

关键修改点

  • 把generatedOptions和generatedOptions1的定义移到app函数内部,这样每次调用app(也就是点击按钮)时,都会重新执行随机生成逻辑,得到新的选项。
  • 保留全局的options、userBoard和computerBoard,因为这些不需要每次都重新获取或定义。

你的HTML代码没有问题,不需要修改。现在点击按钮就能每次都生成新的随机石头剪刀布选项了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 22:40:37