Javascript 如何在生成随机位置后设置随机颜色(比如绿色)
所以我正在解决一个骑士巡演的问题,我想在骑士“第一步”=“第一次出现”的区域设置绿色 这就是它看起来的样子: 我有一张8x8表,我的骑士随机出现在棋盘上,我不知道如何将他的第一次出场设置为绿色Javascript 如何在生成随机位置后设置随机颜色(比如绿色),javascript,jquery,html,css,Javascript,Jquery,Html,Css,所以我正在解决一个骑士巡演的问题,我想在骑士“第一步”=“第一次出现”的区域设置绿色 这就是它看起来的样子: 我有一张8x8表,我的骑士随机出现在棋盘上,我不知道如何将他的第一次出场设置为绿色 var boardSize = 8; var currentCoords = {x: Math.round(Math.random() * 7), y: Math.round(Math.random() * 7)}; var count = 1; 这是正在生成的部分 $('table tr').eq(
var boardSize = 8;
var currentCoords = {x: Math.round(Math.random() * 7), y: Math.round(Math.random() * 7)};
var count = 1;
这是正在生成的部分
$('table tr').eq(currentCoords.y).find('td').eq(currentCoords.x).html('<span style="font-size:50px;color:blue;margin-left:10%;">♘</span>');
$('table tr').eq(currentCoords.y).find('td').eq(currentCoords.x).html('♘;');
这就是奈特出现在棋盘上的时候
如果有人能帮忙,我将不胜感激。
提前谢谢
预期结果:
好的,您希望正方形的背景为绿色。“期望结果”屏幕截图澄清了这一点,谢谢 你已经知道如何获取表格单元格,以便将骑士放入单元格 您需要使用类似的jQuery调用来获取单元格:
$('table tr').eq(currentCoords.y).find('td').eq(currentCoords.x)
然后,您需要使用.css()
调用来更改单元格本身的样式,而不是用来放置骑士的.html()
调用
您需要设置的样式是background
,因此您可以执行以下操作:
$('table tr').eq(currentCoords.y).find('td').eq(currentCoords.x).css({'background':'green'});
在你的队伍之前或之后放置骑士
另外,由于两行代码之间存在大量重复的代码,因此可以通过移动jQuery部分将表单元格放入单独的变量中,然后引用它两次来进一步简化,如下所示:
var $firstCell = $('table tr').eq(currentCoords.y).find('td').eq(currentCoords.x);
$firstCell.css({'background':'green'});
$firstCell.html('<span style="font-size:50px;color:blue;margin-left:10%;">♘</span>');
var$firstCell=$('table tr').eq(currentCoords.y).find('td').eq(currentCoords.x);
$firstCell.css({'background':'green'});
$firstCell.html('♘;');
希望这能有所帮助。请澄清您希望成为绿色的原因。因此,国王应该出现在屏幕上-绿色或随机颜色?还有,可能是屏幕截图?代码的更多部分?您正在生成蓝色的内容,这可能是问题所在吗?请尝试
♘代码>?这就是我需要的这太棒了,谢谢。但也许我不是很清楚。我只需要第一个正方形是绿色的。我给出的解决方案应该只影响放置骑士的同一个正方形。如果您不希望子序列方块受到影响,那么只调用.css()
部分一次。如何只调用一次?尝试使用.one()时效果不太好。请尝试在调用后设置一个变量,并且仅在未设置该变量时调用它。(这是相当基本的东西,你应该能够理解)