用JavaScript实现的2048.

学习JavaScript一段时间了.但是还没有怎么实践过,最近就找了个2048简单的小游戏做一下.

页面效果:

      

使用了jquery库简化了js的语法.

  源文件有:

    index.html  游戏页面

    2048.css 样式表

  js文件有

    jquery.js

    supprot.js 游戏基础逻辑

    animation.js 游戏动画逻辑

    game.js 游戏交互逻辑

    main.js 游戏主逻辑

Git地址:https://github.com/kuanglan688/2048

游戏总结: 这个游戏上下左右移动的逻辑都是一样的,只要完成一个方向,其他的方向就很简单了.

  本来以为这种情况会有点复杂:   0 2 0 4 (0代表没有数字) 左移的情况

  但是实现的时候从左到右 依次左移 先吧2 移到最右边 然后后面的4就好办了 一步一步的处理还是挺简单的.

  整个就是用一个二维数组来存储的.也没有复杂的数据结构. 还算是比较简单.

  

涉及到的新知识:

  1 href和src的差别.

    css 用link href来添加 ;js文件用 script src来添加;

    css要用rel属性指明stylesheet; js用type指明text/javascript.

    href 表示超文本连接 表示引用和页面关联. 用在a和link上

    src表示引用资源 用在 img script 和frame 上面

    浏览器解析src时会暂停加载源文件 href不会停止对当前文件的处理.

  2 css文件用来修改样式, 首先要选择对哪个修改:

    1标签选择器: 比如header  前面无修饰符 直接header{}

    2类选择器: 对于class = "grid-cell" 选择时在类名前面加 . 比如.grid-cell{}

    3id选择器: 对于id="startbutton" 选择时在id前面加# 比如 #startbutton{}

    这三种选择器可以嵌套叠加使用

      header p{} 表示header里面p的样式

      header #endbutton{} 表示header里面id 为endbutton的样式

    #button:hover{} 表示鼠标悬停在button上时的样式

  3 js按键事件    $(document).keydown(function(event){

            //按键时的操作 event代表按下的键的信息

            });

  4 css样式

    display: block; 显示为块级元素 后跟换行符

    margin;  (同样也适用于padding)

      若指定四个值 依次是上右下左

      若指定三个值 依次是上 右和左 下

      若指定两个值 依次是 上和下 右和左

      若指定一个值 则上下左右都相同

      设为auto 则有浏览器计算外边距

    position: relative; absolute;

  5 通过append添加元素 $("") .append("")

    然后获得添加的元素 使用.css设置样式.

原文地址:https://www.cnblogs.com/kkcoolest/p/11983441.html

时间: 2024-08-13 12:17:09

用JavaScript实现的2048.的相关文章

用javascript实现一个2048游戏

早就想自己写一个2048游戏了,昨晚闲着没事,终于写了一个如下图,按方向键开始玩吧.如果觉得操作不方便,请直接打开链接玩吧:http://gujianbo.1kapp.com/2048/2048.html 附上源代码链接:https://github.com/gujianbo/js2048 个人博客地址:http://gujianbo.1kapp.com/ 新浪微博:http://weibo.com/gujianbobo 欢迎读者交流讨论并提出宝贵意见. 用javascript实现一个2048游

280行代码:Javascript 写的2048游戏

2048 原作者就是用Js写的,一直想尝试,但久久未动手. 昨天教学生学习JS代码.不妨就做个有趣的游戏好了.2048这么火,是一个不错的选择. 思路: 1. 数组 ,2维数组4x4 2. 移动算法,移动后有数字的对齐,无数字(我用的0,但不显示)补齐. 移动前 移动后(注意程序合并了第一行2个2,并产生了新的2) 移动算法分2步: 第一步骤:移动 第二步骤:合并 移动代码参考: [html] view plaincopy function left(t,i) { var j; var len 

Javascript实现的2048

HTML代码如下 <!DOCTYPE html> <html> <head> <title></title> <meta charset="utf-8" /> <link rel="stylesheet" href="2048.css"/> <script src="2048.js"></script> <scri

JavaScript小游戏--2048(PC端)

1.初始化棋局 $(document).ready(function() { prepare_for_mobile(); //适配移动端 new_game(); }); 2.开始新游戏 function new_game() { back = []; //初始化棋盘 init(); //在随机两个格子生成数字 generate_one_number(); generate_one_number(); } 3.初始化 function init() { for (var i = 0; i < 4;

JavaScript小游戏--2048(移动端)

HTML5中新添加了很多事件,但是由于他们的兼容问题不是很理想,应用实战性不是太强,所以在这里基本省略,咱们只分享应用广泛兼容不错的事件,日后随着兼容情况提升以后再陆续添加分享.今天为大家介绍的事件主要是触摸事件:touchstart.touchmove和touchend. 一开始触摸事件touchstart.touchmove和touchend是iOS版Safari浏览器为了向开发人员传达一些信息新添加的事件.因为iOs设备既没有鼠标也没有键盘,所以在为移动Safari浏览器开发交互性网页的时

最少javascript代码完成一个2048游戏

原生javascript代码写的2048游戏.建议在谷歌浏览器下跑.'WASD'控制方向.演示地址请移步:http://runjs.cn/detail/bp8baf8b 直接贴代码~ html: <!DOCTYPE> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/htm

用javascript实现2048的小游戏

前段时间,看了一个视频,用javascript实现的2048小游戏,发现不难,都是一些基出的语法和简单逻辑. 整个2048游戏没有很多的数据,所有,实现起来还是很有成就感的. 先上图,简直就和原版游戏一样一样的. 下面分享一下整个2048游戏的代码逻辑: 首先,搭建游戏框架 其次,开始我们的代码编写 index.html <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type"

C++实现控制台版2048

前言 之前做过一个JavaScript版本的2048游戏,最近在学习C++,昨天晚上突然心血来潮,想用C++来实现,因为核心算法已十分理解,所以两个小时撸出来一个C++的简易版本. 简介 二维数组遍历,C++基本数据类型,string类,控制结构,函数. 本方法不涉及指针以及面向对象思想,所以可作为刚入门C++的新人的第一个小project. 效果图 实现思路 1.背景 游戏的背景即一个4*4的二维数组,通过每次运动中二维数组中值的变化以及数字的位置的变化,完成该游戏. 2.随机数字及位置 游戏

javascript 2048游戏

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta http-equiv="