一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - js教程 - 用js實現拼圖小游戲

用js實現拼圖小游戲

2022-02-17 19:30我愛H5 js教程

這篇文章主要為大家詳細介紹了用js實現拼圖小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了js實現拼圖小游戲的具體代碼,供大家參考,具體內容如下

一、js拼圖是什么?

用js做得小游戲

二、使用步驟

1、先創建div盒子

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<style>
    div,body{
      margin: 0;
      height: 0;
    }
    #box{
      width: 800px;
      height: 800px;
      background-color: burlywood;
      position: relative;
    }
    #box div {
      width: 200px;
      height: 200px;
      background: url(./imgs/bg.jpg) no-repeat;
      position: absolute;
 
    }
 
  </style>
</head>
<body>
  <div id="box"></div>
</body>

2.寫js

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<script>
  // 獲取標簽
  var box = document.getElementById("box");
  var arrs = [];
  // 循環創建16個對象,添加到數組中
  for(var i = 0; i < 4; i++){
    for(var j = 0; j < 4; j++){
      var divNode = document.createElement("div")
      divNode.style.top = 200 * i + "px"
      divNode.style.left = 200 * j + "px"
 
      // 創建對象
      var pox = {
        left: 200* i,
        top:200*j,
      }
      // 創建好的對象添加到數組里
      if( i !== 3 || j !== 3 ){
        arrs.push(pox)
      }else{
        divNode.style.background = "none";
        divNode.className = "space"
      }
      box.appendChild(divNode)
    }
  }
  console.log(arrs);
 
  // 隨機抽取對象
  for(var i = 0; i < 15; i++){
    var ranNum = parseInt(Math.random() * (15 - i))
    var x = arrs[ranNum].left;
    var y = arrs[ranNum].top;
 
    box.children[i].style.backgroundPosition = - x + "px "+ - y + "px";
    arrs.splice(ranNum,1);
  }
 
  // 鍵盤事件
  document.onkeyup = function(event) {
    // 得到按的那個鍵
    var key = event.keyCode
    // 上
    if (key == 38) {
 
      var x = box.querySelector(".space").style.left
     var y = box.querySelector(".space").style.top
    for (var i = 0; i < 16; i++) {
      if (parseInt(box.children[i].style.top) == parseInt(y) - 200 && parseInt(box.children[i].style.left) == parseInt(x)) {
        box.children[i].style.top = y
        box.querySelector(".space").style.top = parseInt(y) - 200 + "px"
      }
    }
     
    // 下
    }else if (key == 40) {
      
      var x = box.querySelector(".space").style.left
      var y = box.querySelector(".space").style.top
      
      // 遍歷所有小div,找到空白上面得那張 賦值 為y
      for(var i = 0; i < 16; i++){
        if (parseInt(box.children[i].style.top) == parseInt(y) + 200 && parseInt(box.children[i].style.left) == parseInt(x)) {
          box.children[i].style.top = y
        box.querySelector(".space").style.top = parseInt(y) + 200 + "px"
        }
      }
 
    // 左
    }else if (key = 38) {
      var x = box.querySelector(".space").style.left
     var y = box.querySelector(".space").style.top
    for (var i = 0; i < 16; i++) {
      if (parseInt(box.children[i].style.left) == parseInt(x) - 200 && parseInt(box.children[i].style.top) == parseInt(y)) {
        box.children[i].style.left = x
        box.querySelector(".space").style.left = parseInt(x) - 200 + "px"
      }
    }
     
 
    // 右
    }else if (key = 39) {
      var x = box.querySelector(".space").style.left
     var y = box.querySelector(".space").style.top
    for (var i = 0; i < 16; i++) {
      if (parseInt(box.children[i].style.left) == parseInt(x) + 200 && parseInt(box.children[i].style.top) == parseInt(y)) {
        box.children[i].style.left = x
        box.querySelector(".space").style.left = parseInt(x) + 200 + "px"
      }
    }
    }
 
  }
 
</script>

效果圖

用js實現拼圖小游戲

完成效果圖

用js實現拼圖小游戲

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/weixin_46876311/article/details/114737802

延伸 · 閱讀

精彩推薦
  • js教程原生js拖拽功能制作滑動條實例代碼

    原生js拖拽功能制作滑動條實例代碼

    這篇文章主要介紹了原生js拖拽功能制作滑動條實例教程,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的...

    蔣偉平3492022-01-17
  • js教程微信小程序自定義tabbar組件

    微信小程序自定義tabbar組件

    這篇文章主要為大家詳細介紹了微信小程序自定義tabbar組件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    趙思遠kelsty5892022-02-16
  • js教程JavaScript中跨域問題的深入理解

    JavaScript中跨域問題的深入理解

    這篇文章主要給大家介紹了關于JavaScript中跨域問題的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要...

    三七安6722022-02-10
  • js教程詳解uniapp的全局變量實現方式

    詳解uniapp的全局變量實現方式

    這篇文章主要介紹了詳解uniapp的全局變量實現方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下...

    繭君11022021-12-29
  • js教程js+for循環實現字符串自動轉義的代碼(把后面的字符替換前面的字符)

    js+for循環實現字符串自動轉義的代碼(把后面的字符替換前面的字

    這段代碼是從網上看到的一段不錯的代碼,用for命令實現字符串的轉移,而且使用的是for循環直接將后面的字符替換成前面的字符,這個邏輯以前沒試過...

    js教程網4062021-12-18
  • js教程微信小程序使用Echarts和分包的完整步驟

    微信小程序使用Echarts和分包的完整步驟

    這篇文章主要給大家介紹了關于微信小程序使用Echarts和分包的完整步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價...

    little_little8162022-02-15
  • js教程微信小程序實現購物車小功能

    微信小程序實現購物車小功能

    這篇文章主要為大家詳細介紹了微信小程序實現購物車小功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    小王同學Max5512021-12-22
  • js教程JavaScript點擊按鈕生成4位隨機驗證碼

    JavaScript點擊按鈕生成4位隨機驗證碼

    這篇文章主要為大家詳細介紹了JavaScript點擊按鈕生成4位隨機驗證碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一...

    搬磚大法4502022-01-10
主站蜘蛛池模板: 按摩师他揉我奶好爽捏我奶 | 嫩草视频在线观看免费 | 99久久久无码国产精品 | zol中关村在线 | 日韩毛片大全免费高清 | 99久久99热久久精品免 | 亚洲一卡2卡4卡5卡6卡残暴在线 | 小鸟酱在线播放 | chinesefree普通对话 | 国产成人免费片在线观看 | 欧美性一级交视频 | 成人精品一区二区三区中文字幕 | 国产成人啪精品午夜在线播放 | 国产美女亚洲精品久久久综合91 | 欧美一级视频在线观看 | 99久久99久久免费精品蜜桃 | 强漂亮白丝女教师小说 | 亚洲精品中文 | 亚洲sss综合天堂久久久 | 精品在线一区 | 天美传媒传媒免费观看 | 6969精品视频在线观看 | 色yeye在线观视频 | 香蕉eeww99国产精品 | 亚洲性视频在线观看 | 狐媚小说 | 国产免费好大好硬视频 | 日韩精品成人免费观看 | 日韩国产成人 | 福利视频一区二区三区 | 国产欧美日韩精品一区二区三区 | 午夜性色一区二区三区不卡视频 | 午夜国产| 男人扒开 | 亚洲 色 欧美 爱 视频 日韩 | 无限时间看片在线观看 | 深夜啪啪网站 | 古代翁熄系小说辣文 | 亚洲黄网站wwwwww | 国产剧情一区二区三区 | 韩国女主播一区二区视频 |