【ife】任务三十四:听指令的小方块(二)

document.getElementsByTagName("button")[0].onclick = function() {
	var value = document.getElementById("command").value;
	switch(value) {
		case "GO": go(); break;
		case "TUN LEF": tun_lef(); break;
		case "TUN RIG": tun_rig(); break;
		case "TUN BAC": tun_bac(); break;
		case "TRA LEF": tra_lef(); break;
		case "TRA TOP": tra_top(); break;
		case "TRA RIG": tra_rig(); break;
		case "TRA BOT": tra_bot(); break;
		case "MOV LEF": mov_lef(); break;
		case "MOV TOP": mov_top(); break;
		case "MOV RIG": mov_rig(); break;
		case "MOV BOT": mov_bot(); break;
	}
}
function go() {
	var square = document.getElementById("square"); 
	var deg = square.style.transform.slice(7, -4);
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	switch(deg) {
		case "0":
			if (x == 0)
				alert("已到最上方!");
			else {
				x--;
				document.getElementById("box" + x + y).appendChild(square);
			}
			break;
		case "90":
			if (y == 9)
				alert("已到最右方!");
			else {
				y++;
				document.getElementById("box" + x + y).appendChild(square);
			}
			break;
		case "180":
			if (x == 9)
				alert("已到最下方!");
			else {
				x++;
				document.getElementById("box" + x + y).appendChild(square);
			}
			break;
		case "270":
			if (y == 0)
				alert("已到最左方!");
			else {
				y--;
				document.getElementById("box" + x + y).appendChild(square);
			}
			break;
	}
}
function tun_lef() {
	var square = document.getElementById("square");
	var deg = (square.style.transform.slice(7, -4) - '0' + 270) % 360;
	square.style.transform = "rotate("+ deg +"deg)";
}
function tun_rig() {
	var square = document.getElementById("square");
	var deg = (square.style.transform.slice(7, -4) - '0' + 90) % 360;
	square.style.transform = "rotate("+ deg +"deg)";
}
function tun_bac() {
	var square = document.getElementById("square");
	var deg = (square.style.transform.slice(7, -4) - '0' + 180) % 360;
	square.style.transform = "rotate("+ deg +"deg)";
}
function tra_lef() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	if (y == 0)
		alert("已到最左方!");
	else {
		y--;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
function tra_top() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	if (x == 0)
		alert("已到最上方!");
	else {
		x--;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
function tra_rig() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	if (y == 9)
		alert("已到最右方!");
	else {
		y++;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
function tra_bot() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	if (x == 9)
		alert("已到最下方!");
	else {
		x++;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
function mov_lef() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	square.style.transform = "rotate(270deg)";
	if (y == 0)
		alert("已到最左方!");
	else {
		y--;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
function mov_top() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	square.style.transform = "rotate(0deg)";
	if (x == 0)
		alert("已到最上方!");
	else {
		x--;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
function mov_rig() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	square.style.transform = "rotate(90deg)";
	if (y == 9)
		alert("已到最右方!");
	else {
		y++;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
function mov_bot() {
	var square = document.getElementById("square"); 
	var x = square.parentNode.getAttribute("id").slice(3, 4);
	var y = square.parentNode.getAttribute("id").slice(4, 5);
	square.style.transform = "rotate(180deg)";
	if (x == 9)
		alert("已到最下方!");
	else {
		x++;
		document.getElementById("box" + x + y).appendChild(square);
	}
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值