茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    JavaScript 2048 游戲?qū)嵗a(簡(jiǎn)單易懂)
    來源:易賢網(wǎng) 閱讀:1706 次 日期:2016-07-16 13:15:57
    溫馨提示:易賢網(wǎng)小編為您整理了“JavaScript 2048 游戲?qū)嵗a(簡(jiǎn)單易懂)”,方便廣大網(wǎng)友查閱!

    使用javascript制作的2048小游戲非常好玩,有意思,下面給大家分享使用javascript代碼制作的2048游戲,需要的朋友參考下吧

    直接給大家貼代碼了,覺得很滿意直接拿去。

    名單

    <!DOCTYPE html PUBLIC "-//WC//DTD XHTML . Transitional//EN" "http://www.w.org/TR/xhtml/DTD/xhtml-transitional.dtd">

    <html xmlns="http://www.w.org//xhtml">

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-" />

    <title>無標(biāo)題文檔</title>

    <style>

    header{display:block; margin: auto; width:%; text-align:center;}

    header h{font-size:px; font-family:Arial, Helvetica, sans-serif; font-weight:bold;}

    header #newgamebutton{display:block; margin:px auto; width:px; padding:px px; background-color:#fa; font-family:Arial; color:white; border-radius:px; text-decoration:none;}

    header #newgamebutton:hover{background-color:#fb;}

    header p{font-family:Arial; font-size:px; margin:px auto;}

    #grid-container{width:px; height:px; padding:px; margin:px auto; background-color:#bbada; border-radius:px; position:relative;}

    .grid-cell{width:px; height:px; border-radius:px; color:white; background-color:#cccb; position:absolute; font-family:Arial; font-weight:bold; font-size:px; line-height:px; text-align:center;}

    .gameover{display:block; margin: auto; width:px; text-align:center; vertical-align:middle; position:absolute;}

    .gameover p {

    font-family: Arial;

    font-size: px;

    color: white;

    margin: px auto;

    margin-top: px;

    }

    .gameover span {

    font-family: Arial;

    font-size: px;

    color: white;

    margin: px auto;

    }

    #restartgamebutton {

    display: block;

    margin: px auto;

    width: px;

    padding: px px;

    background-color: #fa;

    font-family: Arial;

    font-size: px;

    color: white;

    border-radius: px;

    text-decoration: none;

    }

    #restartgamebutton:hover {

    background-color: #fb;

    }

    #showGameover{width:px; padding:px px; background-color:#fa; font-family:Arial; color:white; border-radius:px; text-decoration:none; font-size:px; position:absolute;}

    </style>

    <script>

    window.onload = function (){

    //newgame();

    var showScore = document.getElementById('score');

    score = ;

    init();

    generateOneNumber();

    generateOneNumber();

    window.onkeydown = function (e){

    var e = e || window.event;

    switch(e.keyCode){

    case :

    if(canMoveLeft(board)){

    moveLeft();

    generateOneNumber();

    isgameover();

    }

    break;

    case :

    if(canMoveUp(board)){

    moveUp();

    generateOneNumber();

    isgameover();

    }

    break;

    case :

    if(canMoveRight(board)){

    moveRight();

    generateOneNumber();

    isgameover();

    }

    break;

    case :

    if(canMoveDown(board)){

    moveDown();

    generateOneNumber();

    isgameover();

    }

    break;

    default :

    break;

    }

    };

    };

    function generateOneNumber() {

    if(!nospace(board)){

    var randx = parseInt(Math.floor(Math.random() * ));

    var randy = parseInt(Math.floor(Math.random() * ));

    while (true) {

    if (board[randx][randy] == ) {

    break;

    }

    var randx = parseInt(Math.floor(Math.random() * ));

    var randy = parseInt(Math.floor(Math.random() * ));

    }

    var randNumber = Math.random() < . ? : ;

    board[randx][randy] = randNumber;

    var gridCell = document.getElementById('grid-cell-'+randx+'-'+randy);

    gridCell.innerHTML = randNumber;

    //

    }

    else {

    gameover();

    }

    }

    function newgame() {

    window.location.reload();

    }

    var board = new Array();

    function init(){

    for(var i=;i<;i++){

    board[i] = new Array();

    for(var j=;j<;j++){

    board[i][j] = ;

    var gridCell = document.getElementById('grid-cell-'+i+'-'+j);

    gridCell.style.top = (+i*)+'px';

    gridCell.style.left = (+j*)+'px';

    }

    }

    }

    function getNumberBackgroundColor(number) {

    switch (number) {

    case :return "#eeeda";break;

    case :return "#edec";break;

    case :return "#fb";break;

    case :return "#f";break;

    case :return "#fcf";break;

    case :return "#feb";break;

    case :return "#edcf";break;

    case :return "#edcc";break;

    case :return "#c";break;

    case :return "#be";break;

    case :return "#c";break;

    case :return "#ac";break;

    case :return "#c";break;

    }

    }

    function getNumberColor(number) {

    if (number <= ) {

    return "#e"

    }

    return "white";

    }

    function nospace(board) {

    for (var i = ; i < ; i++) {

    for (var j = ; j < ; j++) {

    if (board[i][j] == ) {

    return false;

    }

    }

    }

    return true;

    }

    function canMoveLeft(board) {

    for (var i = ; i < ; i++) {

    for (var j = ; j < ; j++) {

    if (board[i][j] != ) {

    if (board[i][j - ] == || board[i][j - ] == board[i][j]) {return true; }

    }

    }

    }

    return false;

    }

    function moveLeft() {

    for (var i = ; i < ; i++) {

    for (var j = ; j < ; j++) {

    if (board[i][j] != ) {

    for (var k = j-; k > -; k--) {

    if(board[i][k] == || board[i][k] == board[i][j]){

    board[i][k] = board[i][k] + board[i][j];

    board[i][j] = ;

    var gridCell = document.getElementById('grid-cell-'+i+'-'+j);

    gridCell.innerHTML = '';

    var gridCellk = document.getElementById('grid-cell-'+i+'-'+k);

    gridCellk.innerHTML = board[i][k];

    gridCellk.style.backgroundColor = getNumberBackgroundColor(board[i][k]);

    gridCell.style.backgroundColor = '#cccb';

    gridCellk.style.color = getNumberColor(board[i][k]);

    gridCell.style.color = 'white';

    score += board[i][k];

    var showScore = document.getElementById('score');

    showScore.innerHTML = score;

    j = k;

    //

    }

    else {

    break; //跳出 var k 的for循環(huán)

    }

    }

    }

    }

    }

    }

    function canMoveUp(board) {

    for (var j = ; j < ; j++) {

    for (var i = ; i < ; i++) {

    if (board[i][j] != ) {

    if (board[i - ][j] == || board[i - ][j] == board[i][j]) {return true; }

    }

    }

    }

    return false;

    }

    function moveUp() {

    for (var j = ; j < ; j++) {

    for (var i = ; i < ; i++) {

    if (board[i][j] != ) {

    for (var k = i-; k > -; k--) {

    if(board[k][j] == || board[k][j] == board[i][j]){

    board[k][j] = board[k][j] + board[i][j];

    board[i][j] = ;

    var gridCell = document.getElementById('grid-cell-'+i+'-'+j);

    gridCell.innerHTML = '';

    var gridCellk = document.getElementById('grid-cell-'+k+'-'+j);

    gridCellk.innerHTML = board[k][j];

    gridCellk.style.backgroundColor = getNumberBackgroundColor(board[k][j]);

    gridCell.style.backgroundColor = '#cccb';

    gridCellk.style.color = getNumberColor(board[i][k]);

    gridCell.style.color = 'white';

    score += board[k][j];

    var showScore = document.getElementById('score');

    showScore.innerHTML = score;

    i = k;

    //

    }

    else {

    break; //跳出 var k 的for循環(huán)

    }

    }

    }

    }

    }

    }

    function canMoveRight(board) {

    for (var i = ; i < ; i++) {

    for (var j = ; j > -; j--) {

    if (board[i][j] != ) {

    if (board[i][j + ] == || board[i][j + ] == board[i][j]) {return true; }

    }

    }

    }

    return false;

    }

    function moveRight() {

    for (var i = ; i < ; i++) {

    for (var j = ; j > -; j--) {

    if (board[i][j] != ) {

    for (var k = j+; k < ; k++) {

    if(board[i][k] == || board[i][k] == board[i][j]){

    board[i][k] = board[i][k] + board[i][j];

    board[i][j] = ;

    var gridCell = document.getElementById('grid-cell-'+i+'-'+j);

    gridCell.innerHTML = '';

    var gridCellk = document.getElementById('grid-cell-'+i+'-'+k);

    gridCellk.innerHTML = board[i][k];

    gridCellk.style.backgroundColor = getNumberBackgroundColor(board[i][k]);

    gridCell.style.backgroundColor = '#cccb';

    gridCellk.style.color = getNumberColor(board[i][k]);

    gridCell.style.color = 'white';

    score += board[i][k];

    var showScore = document.getElementById('score');

    showScore.innerHTML = score;

    j = k;

    //

    }

    else {

    break; //跳出 var k 的for循環(huán)

    }

    }

    }

    }

    }

    }

    function canMoveDown(board) {

    for (var j = ; j < ; j++) {

    for (var i = ; i > -; i--) {

    if (board[i][j] != ) {

    if (board[i + ][j] == || board[i + ][j] == board[i][j]) {return true; }

    }

    }

    }

    return false;

    }

    function moveDown() {

    for (var j = ; j < ; j++) {

    for (var i = ; i > -; i--) {

    if (board[i][j] != ) {

    for (var k = i+; k < ; k++) {

    if(board[k][j] == || board[k][j] == board[i][j]){

    board[k][j] = board[k][j] + board[i][j];

    board[i][j] = ;

    var gridCell = document.getElementById('grid-cell-'+i+'-'+j);

    gridCell.innerHTML = '';

    var gridCellk = document.getElementById('grid-cell-'+k+'-'+j);

    gridCellk.innerHTML = board[k][j];

    gridCellk.style.backgroundColor = getNumberBackgroundColor(board[k][j]);

    gridCell.style.backgroundColor = '#cccb';

    gridCellk.style.color = getNumberColor(board[i][k]);

    gridCell.style.color = 'white';

    score += board[k][j];

    var showScore = document.getElementById('score');

    showScore.innerHTML = score;

    i = k;

    //

    }

    else {

    break; //跳出 var k 的for循環(huán)

    }

    }

    }

    }

    }

    }

    function isgameover() {

    if (nospace(board) && nomove(board)) {

    gameover();

    }

    }

    function nomove(board) {

    if (canMoveDown(board) || 

    canMoveLeft(board) || 

    canMoveRight(board) || 

    canMoveUp(board)) {

    return false;

    }

    return true;

    }

    function bounce(obj,top){

    clearInterval(obj.timer);

    var nSpeed = ;

    var acceleration = ;

    var Flag = ;

    obj.timer = setInterval(function (){

    nSpeed += acceleration;

    nSpeed *= .;

    if(obj.offsetTop + nSpeed >= top){

    obj.style.top = top + 'px';

    nSpeed *= -;

    }else{

    if(Math.abs(nSpeed) < && Math.abs(top-obj.offsetTop)<){

    clearInterval(obj.timer);

    }

    else{

    obj.style.top = obj.offsetTop + nSpeed + 'px';

    }

    }

    },);

    }

    function gameover() {

    //alert("gameover!");

    var gameover = document.createElement('div');

    gameover.id = 'showGameover';

    gameover.innerHTML = 'GAME OVER';

    var gridContainer = document.getElementById('grid-container');

    gridContainer.appendChild(gameover);

    var showGameover = document.getElementById('showGameover');

    showGameover.style.left = (gridContainer.offsetWidth - showGameover.offsetWidth ) / + 'px';

    bounce(showGameover,);

    }

    </script>

    </head>

    <body>

    <header>

    <!--<h> </h>-->

    <a href="javascript:newgame();" id="newgamebutton"> New Game </a>

    <p> score: <span id="score"></span></p>

    <div id="grid-container">

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    <div class="grid-cell" id="grid-cell--"></div>

    </div>

    </header>

    </body>

    </html>

    以上代碼還很滿意吧,都是些div+css方面的知識(shí)

    更多信息請(qǐng)查看網(wǎng)絡(luò)編程
    易賢網(wǎng)手機(jī)網(wǎng)站地址:JavaScript 2048 游戲?qū)嵗a(簡(jiǎn)單易懂)
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2026上岸·考公考編培訓(xùn)報(bào)班

    • 報(bào)班類型
    • 姓名
    • 手機(jī)號(hào)
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報(bào)警專用圖標(biāo)