Javascript变量RGB值
我正在做一个彩色游戏网站 它显示6个不同颜色的正方形和文本中的rgb颜色。Javascript变量RGB值,javascript,html,css,Javascript,Html,Css,我正在做一个彩色游戏网站 它显示6个不同颜色的正方形和文本中的rgb颜色。 您应该单击与rgb文本匹配的正方形 问题是我在使用var pickedColor时遇到问题 在我单击错误颜色的情况下,代码会进入if的ELSE部分,但当我单击正确颜色时,它会进入ELSE部分反正更新1:我更改了数组以使用颜色名称而不是rgb值,这一切都起了作用,但我需要使用rgb代码 /*变量声明*/ 变量平方=[] var colors=[] var pickedColor var squares=document.
您应该单击与rgb文本匹配的正方形 问题是我在使用
var pickedColor
时遇到问题在我单击错误颜色的情况下,代码会进入if的ELSE部分,但当我单击正确颜色时,它会进入ELSE部分反正更新1:我更改了数组以使用颜色名称而不是rgb值,这一切都起了作用,但我需要使用rgb代码
/*变量声明*/
变量平方=[]
var colors=[]
var pickedColor
var squares=document.queryselectoral(“.squares”)
var colorDisplay=document.getElementById(“#colorDisplay”)
var messageDisplay=document.querySelector(“消息”)
var h1=document.querySelector(“h1”)
变量颜色=[“绿色”、“粉色”、“黄色”、“蓝色”、“红色”、“紫色”]
var pickedColor=颜色[1]
/*asigno为一个cada分区着色*/
对于(i=0;i我认为使用jQuery会更好。如果使用jQuery,则可以使用以下代码:
jQuery:
var colors = ["#232323", "#343434", "#555555", "#989889", "#987898", "#458676"];
var rand = colors[Math.floor(Math.random() * colors.length)];
$('#message').text(rand);
$('.square').click(function() {
hexcolor = $(this).css('background-color');
hexc(hexcolor);
if (color == $('#message').text()) {
$(this).css('outline', '5px dotted red');
alert('Correct!');
window.location.href=window.location.href;
} else {
$(this).text('Incorrect; Try again.');
$(this).css('background-color', 'black');
}
});
function hexc(colorval) {
var parts = colorval.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
delete(parts[0]);
for (var i = 1; i <= 3; ++i) {
parts[i] = parseInt(parts[i]).toString(16);
if (parts[i].length == 1) parts[i] = '0' + parts[i];
}
color = '#' + parts.join('');
return color;
}
var colors=[“232323”、“3434”、“555555”、“989889”、“987898”、“458676];
var rand=colors[Math.floor(Math.random()*colors.length)];
$(“#消息”).text(兰特);
$('.square')。单击(函数(){
hexcolor=$(this.css('background-color');
hexc(hexcolor);
如果(颜色==$(“#消息”).text(){
$(this.css('outline','5px点红色');
警惕(“正确!”);
window.location.href=window.location.href;
}否则{
$(this.text('不正确;请重试');
$(this.css('background-color','black');
}
});
函数hexc(colorval){
var parts=colorval.match(/^rgb\(\d+)\s*(\d+)\s*(\d+)$/);
删除(第[0]部分);
对于(var i=1;我“我认为这应该在meta上,但还没有rep”也可以检查代码段在某种程度上是否有效?当我查看代码段时,我看到的只是一个带有一些单词的黑色页面,但没有“文本中有6个不同颜色的方块和rgb中的颜色”您在这里有一个打字错误var random=Math.floor(Math.random()*colors.lenght)
应该是length
请将问题标题更改为实际描述您遇到的实际问题。对于这个答案的任何未来观众:我刚才看了它,没有意识到我已经发布了它,并认为“我应该否决它,因为它不必要地引入了jQuery”。Lol
<div class="square" style="background-color: #232323;"></div>
<div class="square" style="background-color: #343434;"></div>
<div class="square" style="background-color: #555555;"></div>
<div class="square" style="background-color: #989889;"></div>
<div class="square" style="background-color: #987898;"></div>
<div class="square" style="background-color: #458676;"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
.square {
float: left;
height: 30vh;
width: 30vw;
margin: 1%;
color: gold;
display: flex;
align-items: center;
justify-content: center;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}