Java前端总结13

本文主要探讨了jQuery的使用,通过w3school的教程进行学习,并实践了使用JavaScript实现的2048游戏,涵盖了init.js和active.js两个关键部分。
摘要由CSDN通过智能技术生成

jQuery 教程 (w3school.com.cn)

跟着别人敲了敲关于JavaScript的2048游戏(仅有JavaScript的代码)

init.js 

var board = new Array(),//每个格子的数字
    score = 0,//分数
    has_conflicted = new Array(),//解决连续消除的标记
    successString = 'Success',
    gameOverString = 'GameOver';

$(function(){
    alert("点击New Gamec开始或重开游戏");
    $("#start").click(newGame);
});//加载完之后开始游戏

function newGame(){
    //初始化数组
    for(var i=0;i<4;i++){
        board[i] = new Array();
        has_conflicted[i]= new Array();
        for(var j=0;j<4;j++){
            board[i][j]=0;
            has_conflicted[i][j]=false;
        }
    } 
    //通过newGame按钮开始游戏时初始化棋盘
    updateBoardView();
    score = 0;
    updateScore(score);//通过newGame按钮开始游戏时初始化分数
    //棋盘上随机出现两个数字
    generateOneNum();
    generateOneNum();
}

//随机一个位置和一个数字
//并将数字显示出来
function generateOneNum(){
    //如果棋盘已满返回
    if(noSpace()){
        return false;
    }
    var randX,randY,time=0;
    //最多随机50次
    //保证随机出来的位置上为空
    do{
        time++;
        randX = Math.floor(Math.random()*4);
        randY = Math.floor(Math.random()*4);
    }while(board[randX][randY]&&(time<50))
    //50次之后依然随机不到,循环查找空位
    if(time==50){
        for(var i=0;i<4;i++){
          for(var j=0;j<4;j++){
             if(!board[i][j]){
                randX=i;
                randY=j;
             }
          }
       }    
    }
    //随机出一个数字2或者4
    randNum = Math.random()>0.1?2:4;
    board[randX][randY]=randNum;//设定棋盘上的数字
    showNumAnimate(randX,randY,randNum);//动态显示数字
    return true;
}

//动态显示数字
function showNumAnimate(i,j,randNum){
    //为目标单元格添加p元素
    var tem=$("tr:eq("+i+")").children("td:eq("+j+")")
                             .append("<p>"+randNum+"</p>")
                             .children("p");
    //动态显示数字
    te
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值