使用原生JS实现火锅点餐小程序(面向对象思想)


Posted in Javascript onDecember 10, 2019

本次小程序采用ES6开发标准,不会的宝宝们请先学习,再来观看吧!

使用条件:使用ES6标准开发;因为采用了Bootstrap在线,所以需要联网;VSCode开发工具,在本地服务器中打开。

 代码展示:

使用原生JS实现火锅点餐小程序(面向对象思想)

 Demo.html(网页),Demo.css(样式),Test01.js(菜单类),Test02.js(循环菜单),Test03.js(增,删操作)

 下面进行一一展示:

 Demo.html(网页):

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" rel="stylesheet">
  <link rel="stylesheet" href="Demo.css" rel="external nofollow" >
  <script type="text/javascript" src="Test03.js"></script>
</head>
<body>
  <div class="container">
    <div class="row">
      <div class="col-md-6">
        <table id='table1' class="table table-bordered table-striped">
          <tr>
            <td>名称</td>
            <td>价格</td>
            <td>图片</td>
            <td>操作</td>
          </tr>
          <tbody id = 'tbody'></tbody>
        </table>
      </div>
      <div class="col-md-6">
        <table id='table2' class="table table-bordered" style="background-color:burlywood;">
          <tr>
            <td>名称</td>
            <td>价格</td>
            <td>数量</td>
            <td>操作</td>
          </tr>
          <tbody id="tbody1"></tbody>
        </table>
      </div>
    </div>
  </div>
  <script type="module">
    import {db_foot} from './Test02.js';
    let contents = [];
    window.onload = function(){
      for(const foots of db_foot()){
        contents.push(`
          <tr>
            <td>${foots.name}</td>
            <td>${foots.price}</td>
            <td>${foots.pic}</td>
            <td><button value="${foots.name}" money="${foots.price}" class="btn btn-sm btn-info" οnclick="sss(this)">加入菜单</button></td>
          </tr>
        `);
        document.getElementById('tbody').innerHTML = contents.join("");
      };
    };
  </script>
 
</body>
</html>

Demo.css(样式):

*{margin: 0;padding: 0;}
tr,td{
  text-align:center;
  line-height: 20px;
}
td{
  vertical-align: middle;
}

Test01.js(菜单类):

export default class Person{
  constructor(name,price,pic){
    this.name = name;
    this.price = price;
    this.pic = pic;
  }
}

Test02.js(循环菜单):

import Person from './Test01.js';
 
export function db_foot(){
  let foots = new Array();
  foots.push(new Person('鱼香肉丝',100,''));
  foots.push(new Person('宫保鸡丁',200,''));
  foots.push(new Person('菠萝吹雪',300,''));
  return foots;
}

Test03.js(增,删操作):

let contents = [];
function sss(e){
  var flag = true;
  var zhi = e.getAttribute("value");
  var num = e.getAttribute("money");
  var arr_tr =document.getElementById("table2").getElementsByTagName("tr");
  let i;
  for(i=0 ; i<arr_tr.length ; i++){
    var td = arr_tr[i].firstElementChild.innerHTML;
    //重复点菜,修改数量和金钱
    if(td == zhi){
      flag = false;
      //个数
      var count = arr_tr[i].firstElementChild.nextElementSibling.nextElementSibling;
      var sum = count.innerHTML = parseFloat(count.innerHTML) + 1; 
      //金钱数
      var qian = arr_tr[i].firstElementChild.nextElementSibling.innerHTML = sum * num; 
      break;
    }
  }
  if(flag){
    let tbody1 = document.getElementById("tbody1");
    var tr = document.createElement("tr");
    //名称
    var td1 = document.createElement("td");
    td1.innerHTML = `${zhi}`;
    //价钱
    var td2 = document.createElement("td");
    td2.innerHTML = `${num}`;
    //数量
    var td3 = document.createElement("td");
    td3.innerHTML = `1`;
    //操作
    var td4 = document.createElement("td");
    td4.innerHTML = `<button class="btn btn-sm btn-warning" οnclick='shanchu(this)'>删除</button>`;
    //插入
    tr.appendChild(td1);
    tr.appendChild(td2);
    tr.appendChild(td3);
    tr.appendChild(td4);
    tbody1.appendChild(tr);
  }
}
//删除
function shanchu(obj){
  obj.parentNode.parentNode.parentNode.removeChild(obj.parentNode.parentNode);
}

总结

以上所述是小编给大家介绍的使用原生JS实现火锅点餐小程序(面向对象思想),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
使用jQuery的ajax功能实现的RSS Reader 代码
Sep 03 Javascript
JavaScript 页面编码与浏览器类型判断代码
Jun 03 Javascript
QUnit jQuery的TDD框架
Nov 04 Javascript
密码强度检测效果实现原理与代码
Jan 04 Javascript
利用js读取动态网站从服务器端返回的数据
Feb 10 Javascript
js模拟C#中List的简单实例
Mar 06 Javascript
红米手机抢购的js代码
Mar 10 Javascript
jquery实现定时自动轮播特效
Dec 10 Javascript
JavaScript运动框架 链式运动到完美运动(五)
May 18 Javascript
Electron autoUpdater实现Windows安装包自动更新的方法
Dec 24 Javascript
Postman如何实现参数化执行及断言处理
Jul 28 Javascript
JavaScript实现网页留言板功能
Nov 23 Javascript
JavaScript多种滤镜算法实现代码实例
Dec 10 #Javascript
vue仿淘宝滑动验证码功能(样式模仿)
Dec 10 #Javascript
vue实现随机验证码功能(完整代码)
Dec 10 #Javascript
vue实现短信验证码登录功能(流程详解)
Dec 10 #Javascript
基于vue实现图片验证码倒计时60s功能
Dec 10 #Javascript
使用Bootstrap做一个朝代历史表
Dec 10 #Javascript
JS实现拼图游戏
Jan 29 #Javascript
You might like
ADODB类使用
2006/11/25 PHP
php通过字符串调用函数示例
2014/03/02 PHP
索趣科技的答案
2007/02/07 Javascript
javascript 动态调整图片尺寸实现代码
2009/12/28 Javascript
加随机数引入脚本不让浏览器读取缓存
2014/09/04 Javascript
JavaScript DOM进阶方法
2015/04/13 Javascript
js预加载图片方法汇总
2015/06/15 Javascript
轻松学习jQuery插件EasyUI EasyUI表单验证
2015/12/01 Javascript
JavaScript实现九九乘法表的简单实例
2016/06/07 Javascript
javascript输出AscII码扩展集中的字符方法
2016/12/26 Javascript
Underscore之Array_动力节点Java学院整理
2017/07/10 Javascript
详解Vue前端生产环境发布配置实战篇
2019/05/07 Javascript
如何在vue中使用jointjs过程解析
2020/05/29 Javascript
基于javascript canvas实现五子棋游戏
2020/07/08 Javascript
Element Steps步骤条的使用方法
2020/07/26 Javascript
js实现QQ邮箱邮件拖拽删除功能
2020/08/27 Javascript
Python制作CSDN免积分下载器
2015/03/10 Python
Python中比较特别的除法运算和幂运算介绍
2015/04/05 Python
在 Python 应用中使用 MongoDB的方法
2017/01/05 Python
python 将字符串中的数字相加求和的实现
2019/07/18 Python
python用match()函数爬数据方法详解
2019/07/23 Python
Flask教程之重定向与错误处理实例分析
2019/08/01 Python
使用Pyinstaller转换.py文件为.exe可执行程序过程详解
2019/08/06 Python
python:目标检测模型预测准确度计算方式(基于IoU)
2020/01/18 Python
Python Matplotlib简易教程(小白教程)
2020/07/28 Python
了解一下python内建模块collections
2020/09/07 Python
css3 border-radius属性详解
2017/07/05 HTML / CSS
迪奥美国官网:Dior美国
2019/12/07 全球购物
电子专业毕业生自我鉴定
2014/01/22 职场文书
应届生求职信范文
2014/05/26 职场文书
群教个人对照检查材料
2014/08/20 职场文书
2014年社区工作总结
2014/11/18 职场文书
质检员岗位职责
2015/02/03 职场文书
如何写新闻稿
2015/07/18 职场文书
中秋节英文祝福语句(14句)
2019/09/11 职场文书
导游词之江苏溱潼古镇
2019/11/27 职场文书