JavaScript

JavaScript成语消消乐

一、预览

JavaScript成语消消乐

二、开发步骤

基本面向过程的思想。没有面向对象的部分。

准备好成语库。db.js
选出每一关的成语。
对成语进行乱序。
初始化表格的同时,将单个字放到每个单元格的按钮上展示。
对tbody进行点击事件的监听。事件函数中获取btn。用变量记录选中的文字。
判断得分、判断下一关、判断游戏结束(成语库毕竟用数组来保存。成语数量有限。)

三、代码

只有两个文件:index.html和db.js

核心方法:

1、 每关成语,返回乱序前的拼接字符串,并存储本关成语数组

var dbtxt = "";
var start = this.current_index * this.every_words;
var end = start + this.every_words <= this.dbs.length ? start + this.every_words : this.dbs.length;
this.current_words = end - start;
if (this.current_words <= 0) {
    end = 0;
    this.current_words = 0;
}
for (var i = start; i < end; i++) {
    dbtxt += this.dbs[i];
    this.chooseData.push(this.dbs[i]);
}
return dbtxt; //返回乱序前的拼接字符串。

2、 打乱成语字符串

var luanxu = [];
while (dbtxt.length > 0) {
    var index = parseInt(Math.random() * dbtxt.length);
    luanxu.push(dbtxt.charAt(index));
    dbtxt = dbtxt.substring(0, index) + dbtxt.substring(index + 1, dbtxt.length);
}
return luanxu; //返回乱序后的字符。

3、加载界面

var len = 0;
var tbody = document.getElementById("mytbody");
tbody.innerHTML = ""; //清空tbody。
var tbodyhtml = "";
for (var i = 0; i < XXL.current_words; i++) {
    var tr = "<tr>";
    for (var j = 0; j < 4; j++) {
        var td = "<td>";
        td += ("<button type='button'>" + words[len++] + "</button>");
        td += "</td>";
        tr += td;
    }
    tr += "</tr>";
    tbodyhtml += tr;
}
tbody.innerHTML = tbodyhtml;

4、 检查点击成语是否匹配

//判断选择的成语,是否能够组成一个四字成语。
var find = false; //是否匹配标志位。
for (var i = 0; i < this.chooseData.length; i++) {
      if (this.recordChooseText == this.chooseData[i]) {
           find = true;
           break;
       }
}

5、 匹配后消除正常的

for (var i = 0; i < XXL.recordChooseBtn.length; i++) {
     XXL.recordChooseBtn[i].remove();
}

db.js文件如下

var listWords=["金蝉脱壳","百里挑一","金玉满堂","背水一战","霸王别姬", ....];

演示程序:演示代码
源码下载:源码下载

(96)

本文由 Web秀 作者:Javan 发表,转载请注明来源!

关键词:, ,

热评文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注