javascript - Mozilla 浏览器错误

标签 javascript google-chrome debugging firefox

我正在尝试使用 JavaScript 创建一个游戏,但在此过程中我发现了 Firefox 中的一个错误。游戏很简单。您应该猜测 RGB 十六进制代码中的颜色是什么。有6个框,您应该单击该框,如果错误或正确,它会提醒您。该游戏在 chrome、IE、Opera 中运行良好,但在 mozilla firefox 中无法运行。我做了一个警报来调试它,并且 Firefox 添加了一些内联样式。请参阅下面的屏幕截图和代码。希望您能帮助我解决 Firefox 中的这个问题。提前致谢

FIREFOX SCREENSHOT PROBLEM CHROME SCREENSHOT NO PROBLEM

<!DOCTYPE html>
<html>
<head>
<title>Color Game</title>
<style type="text/css">
	body{
		background-color: #232323;
	}

	h1 {
		color:#fff;
	}
	.square {
		width: 30%;
		background: purple;
		padding-bottom: 30%;
		float: left;
		margin: 1.66%;
	}

	#container {
		max-width: 600px;
		margin: 0px auto;
	}
</style>
</head>
<body>

<h1>Guess what color is<span id="colorDisplay">RGB</span>
<br/>
Click the box to know what color it is.
</h1>

<div id="container">
	<div class="square"> </div>
	<div class="square"> </div>
	<div class="square"> </div>
	<div class="square"> </div>
	<div class="square"> </div>
	<div class="square"> </div>
</div>

<script type="text/javascript">
	
	var colors = [
	"rgb(255, 0, 0)",
	"rgb(255, 255, 0)",
	"rgb(0, 255, 0)",
	"rgb(0, 255, 255)",
	"rgb(0, 0, 255)",
	"rgb(255, 0, 255)"
	];

	var squares = document.querySelectorAll(".square");
	var pickedColor = colors[1];
	var colorDisplay = document.querySelector("#colorDisplay");

	colorDisplay.textContent = pickedColor;

	for (var i=0; i<squares.length; i++){
		//add initial colors to square
		squares[i].style.background = colors[i];
		//add click listener to square
		squares[i].addEventListener("click",function(){
			var clickedColor = this.style.background;
			alert(clickedColor);
			if (clickedColor === pickedColor){
				alert("Correct");
			} else{
				alert("Wrong");
			}
		});
	}

</script>

</body>
</html>

最佳答案

尝试使用 backgroundColor 属性而不是 background简写:

var colors = [
    "rgb(255, 0, 0)",
    "rgb(255, 255, 0)",
    "rgb(0, 255, 0)",
    "rgb(0, 255, 255)",
    "rgb(0, 0, 255)",
    "rgb(255, 0, 255)"
    ];

    var squares = document.querySelectorAll(".square");
    var pickedColor = colors[1];
    var colorDisplay = document.querySelector("#colorDisplay");

    colorDisplay.textContent = pickedColor;

    for (var i=0; i<squares.length; i++){
        //add initial colors to square
        squares[i].style.background = colors[i];
        //add click listener to square
        squares[i].addEventListener("click",function(){
            var clickedColor = this.style.backgroundColor;
            alert(clickedColor);
            if (clickedColor === pickedColor){
                alert("Correct");
            } else{
                alert("Wrong");
            }
        });
    }

关于javascript - Mozilla 浏览器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41917917/

相关文章:

javascript - JSON.stringify 自定义格式

javascript - CSS:强制视频显示全高并以纵向手持设备为中心

javascript - 对我来说,出乎意料的是,Robot Framework 中的 javascript 返回值。为什么?

debugging - 如何在移动设备上调试网站?

你能用 C#define 注释吗?

javascript - 有什么方法可以使用 HTML5/CSS/Javascript 对位图进行颜色转换吗?

javascript - 如何在浏览器中调试内存泄漏、无限循环和执行 Javascript?

c# - 本地获取 Chrome 和 Firefox 版本,C#

css - 为什么@font-face 相对 URL 加载正确但也产生 404 错误?

python - GetProcAddress 返回值