您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 淮北分类信息网,免费分类信息发布

介绍JS实现五子棋界面设计

2024/6/8 11:15:07发布92次查看
免费学习推荐:js视频教程
需求分析以及代码实现
第一节 画布样式布局
1. canvas进行画布的设计
新建css文件夹,新建style.css文件;
在style.css文件里进行canvas编写;
canvas{ display: block; margin: 50px auto; box-shadow: -2px -2px 2px #efefef,5px 5px 5px #b9b9b9; }
参数解释
margin 50px auto// 是指画布居中;
box-shadow: -2px -2px 2px #efefef,5px 5px 5px #b9b9b9//
offset-x:(如这里的-2px)必需,取值正负都可。offset-x水平阴影的位置。
offset-y:(如这里的-2px)必需,取值正负都可。offset-y垂直阴影的位置。
blur:(如这里的2px)可选,只能取正值。blur-radius阴影模糊半径,0即无模糊效果,值越大阴影边缘越模糊。
color:可选,阴影的颜色。如果不设置,浏览器会取默认颜色,通常是黑色,但各浏览器默认颜色有差异,建议不要省略。
**
2. 效果图
第二节 棋盘设计
1. 大小设计
分成14*14大小的矩形框,总长450px,宽450px,其中两边留白共占15px,每个小的矩形框30px乘30px
2. js代码编写(绘制)
var chess = document.getelementbyid('chess');var context = chess.getcontext('2d');//画一个二维画布context.strokestyle = #bfbfbf;var drawchessboard = function (){    for (var i=0; i<15; i++){ context.moveto(15+i*30,15); context.lineto(15+i*30,435); context.stroke();//画竖线 context.moveto(15,15+i*30); context.lineto(435,15+i*30); context.stroke();//画横线 }}drawchessboard();//调用画棋盘的函数
3. 效果图
第三节 棋子设计
1. 代码编写
//初始化位置数组var chessboard = [];for(var i = 0;i<15;i++){ chessboard[i] = []; for(var j=0;j<15;j++){ chessboard[i][j] = 0; }}
//画棋子var onstep = function (i, j, flag){//i,j代表棋子的索引位置,flag标记黑棋白棋 context.beginpath(); context.arc(15+i*30, 15+j*30, 13,0,2*math.pi); context.closepath(); var gradient = context.createradialgradient(15+i*30+2,15+j*30-2,13,15+i*30+2,15+j*30-2,0); if(flag){//如果flag为真则黑棋 gradient.addcolorstop(0, "#0a0a0a"); gradient.addcolorstop(1,"#636766") }else {//白棋 gradient.addcolorstop(0, "#d1d1d1"); gradient.addcolorstop(1,"#f9f9f9"); } context.fillstyle=gradient; context.fill();}
//点击时触发,获得所点击的位置,然后判断该位置有没有棋子,若没有也就是if判断,调用onstep函数画黑棋(or白棋)chess.onclick = function (e){ var x = e.offsetx; var y = e.offsety; var i = math.floor(x/30); var j = math.floor(y/30); if(chessboard[i][j]==0){ onstep(i,j,flag); chessboard[i][j] = 1; flag = !flag; }}
2. 效果图
(自己在棋盘上随机点击会轮流出现黑棋和白棋)
第四节 背景添加
1. 代码编写
var pic = new image();pic.src = "images/background.jpg";pic.onload = function (){ context.drawimage(pic, 0, 0, 450, 450); drawchessboard();}//注:棋盘设计中js编写最后一句可以删除了,因为在这里调用了drawchessboard();
2. 效果图
这里是index.html里面的代码
<!doctype html><html lang="en"><head>    <meta charset="utf-8">    <title>五子棋</title>    <link rel="stylesheet" type="text/css" href="css/style.css"></head><body><canvas id="chess" width="450px" height="450px"></canvas><script type="text/javascript" src="js/script.js"></script></body></html>
项目架构
这样简易的五子棋ui界面就设计好了,赶紧动手试一试哦!
相关免费学习推荐:javascript(视频)
以上就是介绍js实现五子棋界面设计的详细内容。
淮北分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录