<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>选字游戏</title> <style> #wrap{width: 400px;height: 600px;border: 1px solid red;margin: auto} #big{font-size: 140px;text-align: center} li{list-style: none;float: left;width: 20%;font-size: 40px;} </style> <script src="js/jquery-1.7.1.min.js"></script> </head> <body> <div id="wrap"> <div id="big"></div> <p>根据上面的文字选择正确的颜色</p> <ul id="small"> <li></li> <li></li> <li></li> <li></li> <li></li> </ul> </div> <script type="text/javascript"> $(function(){ var bigTextNum = 0; //创建随机数 function randFn(max,min){ return parseInt(Math.random()*(max-min)+min) } //创建颜色数组 var arrAllText = [‘红‘,‘黑‘,‘黄‘,‘蓝‘,‘绿‘]; var arrAllColor = [‘red‘,‘black‘,‘yellow‘,‘blue‘,‘green‘]; //为上面一个div添加随机文字 function setBig(){ $("#big").css({ color:arrAllColor[randFn(0,5)], }) ranTextNum=randFn(0,5); //储存下标 bigTextNum=ranTextNum; $("#big").text(arrAllText[ranTextNum]); } setBig(); //为下面的li添加文字 function setSmall(){ //这是为了防止第二次时事件带来的影响,清除所有事件 $("li").off("click"); //深拷贝****** var arrTempText = [].concat(arrAllText); var arrTempColor = [].concat(arrAllColor); var lis=$("#small li"); for (var i = 0; i < lis.length; i++) { var num=randFn(0,arrTempText.length); lis.eq(i).text(arrTempText[num]); var numC=randFn(0,arrTempColor.length); lis.eq(i).css("color",arrTempColor[numC]); //比较上面文字和下面文字的下标,因为他们是对应的 if(arrAllColor[bigTextNum] == arrTempColor[numC]){ lis.eq(i).on("click",function(){ setBig(); setSmall(); }) } //防止li里出现重复的字,所以添加一个从数组里删除一个 arrTempText.splice(num,1); arrTempColor.splice(numC,1); }; } setSmall(); }) </script> </body> </html>
时间: 2024-12-19 21:47:46