创建表格并更改<;td>;使用JavaScript的背景色

创建表格并更改<;td>;使用JavaScript的背景色,javascript,jquery,html,random,numbers,Javascript,Jquery,Html,Random,Numbers,我的任务是:我想创建一个带有按钮的页面和一个从1到20的水平结果表 当你点击一个按钮时,你会得到一个随机数,显示在页面上,带有这个数字的单元格会变成绿色。如果该数字第二次出现,则将其置为灰色 如果单元格已为灰色,则不会发生任何事情。就这样。如果可以的话,请帮我。谢谢您可以在单击时使用am if语句 <td onclick:"checkClass(this)"></td>/*Example of your td*/ function checkClass(this){

我的任务是:我想创建一个带有按钮的页面和一个从1到20的水平结果表

当你点击一个按钮时,你会得到一个随机数,显示在页面上,带有这个数字的单元格会变成绿色。如果该数字第二次出现,则将其置为灰色


如果单元格已为灰色,则不会发生任何事情。就这样。如果可以的话,请帮我。谢谢

您可以在单击时使用am if语句

<td onclick:"checkClass(this)"></td>/*Example of your td*/

function checkClass(this){
    /*check if class element is already green*/
    if($(this).attr("class")=="green")
    {
      /*if so them change to gray*/
      $(this).attr("class","gray") ; 
    }
    else if($(this).attr("class")=="gray")
    {
     /*do noting*/
    }
    else
    {
      /*first time you click set green*/
      $(this).attr("class","gray");
    }
}
/*您的td示例*/
函数checkClass(this){
/*检查类元素是否已为绿色*/
if($(this.attr(“类”)=“绿色”)
{
/*如果是这样,它们将变为灰色*/
$(此).attr(“类”、“灰色”);
}
else if($(this.attr(“类”)=“灰色”)
{
/*什么也不做*/
}
其他的
{
/*第一次单击“设置为绿色”*/
$(此).attr(“类”、“灰色”);
}
}

使用
if
检查该区域是否已为绿色或灰色,并决定相应的操作:

      if(!numbs.getElementsByTagName("td")[i].getAttribute("class")) {
        numbs.getElementsByTagName("td")[i].setAttribute("class", "green");
      } else if(numbs.getElementsByTagName("td")[i].getAttribute("class") == "green") {
        numbs.getElementsByTagName("td")[i].setAttribute("class", "grey");
      } else {
        // do nothing.. 
      }
看法

附言:你几乎不用jQuery,主要是香草JS。

试试这个

function cheack(){  
  var randNumb = (Math.floor(Math.random()*20)+1);
  var numbs = $(document).find('td')[randNumb];
  var c = $(".green").index("td");

  if ((!$(numbs).hasClass('green')) && (!$(numbs).hasClass('grey')))
    {
      $(numbs).addClass('green');
    }
else
  {
    $(numbs).addClass('grey');
  }

}

链接代码或至少创建一个集成到您的问题中的代码片段,以了解您的错误在哪里或到目前为止您做了什么。这看起来像一个小需求规范,而不是一个问题。谢谢朋友,我现在是初学者