SOURCE

console 命令行工具 X clear

                    
>
console
window.onload=init();
	var result=false,ys=true;
	function GetRandom(Min,Max){
		return Min+Math.round((Max-Min)*Math.random());
	}
	function RandomNum(){
		var num=GetRandom(1,16);
		if(document.getElementById(num).innerHTML==""){
			document.getElementById(num).innerHTML=GetRandom(1,2)*2;	
		}else{
			RandomNum();
		}
	}
	//初始化数据
	function init(){
		var tab=document.getElementById("tab"),text="",id=1;
		for(var i=1;i<5;i++){
			text+="<tr>";
			for(var j=i;j<=i+12;j+=4){
				text+="<td id="+id+"></td>";
				id++;
			}
			text+="</tr>"
		}
		tab.innerHTML=text;
		for(var i=0;i<2;i++){
			RandomNum();	
		}	
		Result();
	}
	//上
	function Top(){
		for(var i=1;i<5;i++){
			ys=true;
			for(var j=i;j<=i+12;j+=4){
				for(var x=j;x>4;x-=4){
					var test1=document.getElementById(x-4);
					var test2=document.getElementById(x);
					Change(test1,test2);
				}
			}
		}
	}
	//下
	function But(){
		for(var i=1;i<5;i++){
			ys=true;
			for(var j=i+12;j>=i;j-=4){
				for(var x=j;x<13;x+=4){
					var test1=document.getElementById(x+4);
					var test2=document.getElementById(x);
					Change(test1,test2);
				}
			}
		}
	}
	//左
	function Left(){
		for(var i=1;i<=13;i+=4){
			ys=true;
			for(var j=i;j<=i+3;j+=1){
				for(var x=j;x>i;x-=1){
					var test1=document.getElementById(x-1);
					var test2=document.getElementById(x);
					Change(test1,test2);
				}
			}
		}
	}
	//右
	function Right(){
		for(var i=1;i<=13;i+=4){
			ys=true;
			for(var j=i+4;j>=i;j-=1){
				for(var x=j;x<i+3;x+=1){
					var test1=document.getElementById(x+1);
					var test2=document.getElementById(x);
					Change(test1,test2);
				}
			}
		}
	}
	//点击键盘事件
	function test(){ 
		result=false;
		if(event.keyCode==37) Left();
		if(event.keyCode==38) Top()
		if(event.keyCode==39) Right();
		if(event.keyCode==40) But();
		if(result) RandomNum();
		Result();
	}
	//位置改变并合并
	function Change(test1,test2){
		if(test1.innerHTML==""&&test2.innerHTML!=""){
			result=true;
			test1.innerHTML=test2.innerHTML;
			test2.innerHTML="";
		}else if(test1.innerHTML!=""&&test1.innerHTML==test2.innerHTML&&ys){
			test1.innerHTML=parseInt(test1.innerHTML)+parseInt(test2.innerHTML);
			test2.innerHTML="";
			result=true;
			ys=false;
		}
	}
	//设置颜色,计算积分
	function Result(){
		var result=0,colors=colors = {
    "": "#d3d3d3",
    "2": "#fef4f2",
    "4": "#fed9a2",
    "8": "#fc8c5e",
    "16": "#f8692f",
    "32": "#f8563d",
    "64": "#ff3936",
    "128": "#00c3dd",
    "256": "#00a4be",
    "512": "#00abcb",
    "1024": "#00abcb",
    "2048": "#00abcb",
    "4096": "#005d6e"
    };
		for(var i=1;i<=16;i++){
			var text=document.getElementById(i);
			text.style.backgroundColor=colors[text.innerHTML];
      if(text.innerHTML>=8){
        text.style.color="#FFF";
      }else{
        text.style.color="#6e6f71"
      }
			if(text.innerHTML!=""){
				result+=parseInt(text.innerHTML)*10;
			}
		}
		document.getElementById("show").innerHTML=result;
	}
<body onkeydown="test()" bgcolor="#f8fefe">
<table id="tab" cellspacing="8" bgcolor="#bfc0bb"></table>
<div style="font-size:12px; margin-top:20px;">(温馨提示:按上下左右键进行操作,如按键无效,请用IE内核的浏览器打开!)</div>
<div style="font-size:16px;">总积分:<span id="show"></span></div>
</body>
body {
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  font-family: "Microsoft YaHei" ! important;
}

table {
  margin: 0px auto;
  margin-top: 100px;
  border-radius: 10px;
}

td {
  width: 80px;
  height: 80px;
  border-radius: 10px;
}

span {
  color: #f8563d;
  font-size: 36px;
}