javascript;拼图游戏(可自选图片和设置行列数)
思路:浏览图片,读取其宽度ImageW,高度值ImageH。读取用户输入的分成几行Row几列Col。
每个方块:boxW=ImageW/Col;boxH=ImageH/Row;
在1到Row*Col中随机,第i个图片的位置设为pos【i】。然后动态创建div生成Row*Col个,其位置根据pos【i】算,其背景图片根据i算,这中间每个div是显示部分图片,所以用到backgroundPosition,其值也的根据i算。
div生成好后,就是根据键盘上下键移动方块啦。
主要依据空格方块的位置,在根据event.keyCode的值,判断是上下左右中哪一个。判断完后,再判断在当前方向键下,空格能否移动,不行,则啥都不做。若能移动,则根据div.style的top和left属性,移动空格块以及它要移动到的那个方块。并保存空格块的属性和位置,以及那个方块的属性和位置。
当i=pos【i】时,即每个方块都放在对应位置上,提示信息-----congratulations!
下面贴上部分代码:
<input type="file" id="file" style="display:none" \>
<input type="button" value="选择图片" onclick="ok()" \><br />
你想把图片分成几行及列呢:<br />行数:<input type="text" id="row" \ /><br />
列数:<input type="text" id="col" \ /><br />
<input type="button" value="Go" onclick="Run()" \><br />
其中,Run实现入口开始放置div,OK()实现读取图片,存取相关属性。当然还有验证等。
/获取设置的行数和列数,并开始游戏
function Run() {
Row = parseInt(row.value.toString());
Col = parseInt(col.value.toString());
boxH = ImgHeight / Row;
boxW = ImgWidth / Col;
blank_pos = Row * Col;
//generateL(Col * Row);
start();
}
function start() {
initPic();//alert(nam.length);
document.onkeydown = keyDown;//鼠标上下左右玩游戏的控制
}
//产生Row*Col-1个图片的随机位置
function initPic() {
&n
相关文档:
因为JSON 是 javascript 的一个子集,所以,在javascript 中使用JSON是非常简单的。
js 代码
var myJSONObject = {"bindings": [
{"ircEvent": "PRIVMSG", "method":&n ......
AA.HTM
-------------------------------------
<!--
showModalDialog函数的使用 (转)
本范例可以实现弹出一个模态窗口,并演示了两种接收和传递参数的方法,同时可以接受模态窗口返回的多个变量
-->
<html> &nbs ......
源代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>验证邮箱地址合法性</title>
<sc ......
一、类型转换的方法和应该注意的问题:
1,转换为布尔型:
(1)用两次非运算(!):
!!5 ==> true
(2)用布尔型的构造函数:
new Boolean(5) == > true
值转换为布尔类型为false:
0,+0,-0,NaN,""(空字符串),undefined,null
除上面的值其他值在转换以后为true,需要特别提到的是:
"0",new Object(),funct ......
你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, Safari四大浏览器之外,世界上还有近百种浏览器。
几天前,浏览器家族有刚诞生了一位小王子,就是Google推出的Chrome浏览器。由于Chrome出生名门,尽管他还是个小家伙,没有人敢小 ......