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

如何实现点击按钮多次触发JS函数以顺时针旋转数字

解决单次旋转问题

问题出在你的rotate函数中:你仅更新了DOM元素的显示内容,但没有同步修改全局变量value1、value2等的存储值。这导致每次点击按钮时,函数都会复用初始的变量值,而非上一次旋转后的最新状态。

修正后的JavaScript代码

var value1 = "1";
var value2 = "2";
var value4 = "3";
var value3 = "4";

document.getElementById("value1").innerHTML = value1;
document.getElementById("value2").innerHTML = value2;
document.getElementById("value3").innerHTML = value3;
document.getElementById("value4").innerHTML = value4;

var btn = document.querySelector('#bt1');

btn.addEventListener('click', rotate)

function rotate() {
  // 保存当前所有值的副本
  var currentValue1 = value1;
  var currentValue2 = value2;
  var currentValue3 = value3;
  var currentValue4 = value4;
  
  // 更新DOM内容
  document.getElementById("value1").innerHTML = currentValue4;
  document.getElementById("value2").innerHTML = currentValue1;
  document.getElementById("value3").innerHTML = currentValue2;
  document.getElementById("value4").innerHTML = currentValue3;
  
  // 更新全局变量,为下一次旋转做准备
  value1 = currentValue4;
  value2 = currentValue1;
  value3 = currentValue2;
  value4 = currentValue3;
}

关键修改说明

在旋转逻辑执行后,新增了对全局变量的赋值操作,将它们同步更新为本次旋转后的最新值。这样下一次点击按钮时,函数会基于当前的网格状态继续旋转,而非回到初始值。

可选:调整为标准90度顺时针旋转

如果你的目标是实现网格整体顺时针旋转90度,当前的旋转顺序可能不符合预期。标准2x2网格的顺时针旋转逻辑应为:

  • 左上角(value1)取左下角(value3)的值
  • 右上角(value2)取左上角(原value1)的值
  • 右下角(value4)取右上角(原value2)的值
  • 左下角(value3)取右下角(原value4)的值

对应的修正函数:

function rotate() {
  var currentValue1 = value1;
  var currentValue2 = value2;
  var currentValue3 = value3;
  var currentValue4 = value4;
  
  // 标准90度顺时针旋转逻辑
  document.getElementById("value1").innerHTML = currentValue3;
  document.getElementById("value2").innerHTML = currentValue1;
  document.getElementById("value3").innerHTML = currentValue4;
  document.getElementById("value4").innerHTML = currentValue2;
  
  // 更新全局变量
  value1 = currentValue3;
  value2 = currentValue1;
  value3 = currentValue4;
  value4 = currentValue2;
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 02:40:17