简易计算器

Xuanmo  发表于: 2016-04-21 01:13:46  分类: 实战案例  1788  9

    做出这个计算器不容易啊,脑细胞都快烧死完了,结合现在的知识,感觉还是蛮有难度的,用到了eval()函数,思维不够开阔,想了那么久还是做出了效果,代码有点多,还是有点小bug,后边更新,先睡上一觉,附上我的效果图: /吃东西  /吃东西

JS代码:


window.onload = function () {
    var oMusic = document.getElementById('music');
    var aBtn = document.getElementsByClassName('button');
    //获取结果框
    var oTxt = document.getElementsByTagName('input')[0];
    //获取 =
    var oEqual = document.getElementsByClassName('equal')[0];
    //获取清除按键
    var oClear = document.getElementsByClassName('clear')[0];
    //获取数字
    var aNum = document.getElementsByClassName('number');
    //获取运算符
    var operation = document.getElementsByClassName('operation');
    var num;
    var result;
    //储存数字
    for (var i = 0; i < aNum.length; i++) {
        aNum[i].index = i;
        aNum[i].onclick = function () {
            oMusic.play();
            num = this.innerHTML;
            oTxt.value += num;
            //判断 第一位为小数点清屏
            if (oTxt.value.charAt(0) == '.') oTxt.value = '';
            result = oTxt.value;
        }
    }
    //运算
    for (var i = 0; i < operation.length; i++) {
        operation[i].index = i;
        operation[i].onclick = function () {
            if (oTxt.value == '') {

            } else {
                oMusic.play();
                oTxt.value = result + this.innerHTML;
            }
        }
    }
    //输出结果 
    oEqual.onclick = function () {
        oMusic.play();
        oTxt.value = eval(oTxt.value);
    }
    //清零 
    oClear.onclick = function () {
        oMusic.play();
        oTxt.value = '';
    }
}

DEMO展示

  • 4人 Love
  • 0人 Haha
  • 0人 Wow
  • 0人 Sad
  • 0人 Angry
demo

作者简介:Xuanmo

打赏

生命的意义在于折腾。

共 9 条评论关于 “简易计算器”