分类: 工具

  • 体重计算器 HTML

    <在HTML中创建体重计算器,你可以使用HTML表单(form)和JavaScript来收集用户输入并计算体重。下面是一个简单的示例,展示了如何创建一个基本的体重计算器。

    HTML部分

    首先,你需要创建一个HTML文件,并添加一个表单和一些输入字段,例如身高和体重(这里我们使用BMI(Body Mass Index,身体质量指数)作为示例)。

    <!DOCTYPE html>
    <html lang="zh">
    <head>
        <meta charset="UTF-8">
        <title>体重计算器</title>
        <script src="calculator.js"></script> <!-- 引入JavaScript文件 -->
    </head>
    <body>
        <h2>体重计算器</h2>
        <form id="weightCalculator">
            <label for="height">身高 (cm):</label>
            <input type="number" id="height" name="height" required><br><br>
            <label for="weight">体重 (kg):</label>
            <input type="number" id="weight" name="weight" required><br><br>
            <button type="button" onclick="calculateBMI()">计算BMI</button>
        </form>
        <p>您的BMI是:<span id="bmiResult">--</span></p>
    </body>
    </html>

    JavaScript部分

    接下来,创建一个名为calculator.js的JavaScript文件,并添加以下代码来处理BMI的计算。

    function calculateBMI() {
        var height = document.getElementById('height').value; // 获取身高输入值
        var weight = document.getElementById('weight').value; // 获取体重输入值
        var bmi;
     
        if (height === "" || weight === "") {
            alert("请填写所有字段!");
            return; // 如果没有填写完整,则不进行计算并返回
        }
     
        // 计算BMI值
        bmi = weight / ((height / 100) * (height / 100));
        document.getElementById('bmiResult').textContent = bmi.toFixed(2); // 显示结果,保留两位小数
    }

    解释

    1. HTML部分:表单包含两个输入字段,分别用于输入身高(厘米)和体重(千克)。还有一个按钮,当点击时调用calculateBMI()函数。结果显示在<p>标签内。
    2. JavaScript部分calculateBMI()函数首先获取用户输入的身高和体重值。然后,它计算BMI值,并将其显示在页面上。如果任何输入字段为空,则显示一个警告消息。

    确保将calculator.js文件放在与HTML文件相同的目录中,或者根据需要调整<script>标签中的src属性。这样,当用户填写完表单并点击“计算BMI”按钮时,页面上就会显示计算出的BMI值。

    ps:仅供参考。

  • HTML 简易计算器

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset=utf-8/>
        <title>Calculator</title>
        <style id="jsbin-css">
            div, span {
                margin: 0;
                padding: 0;
                font-weight: bold;
                font: bold 16px Arial, sans-serif;
                /*禁止选中文本*/
                -moz-user-select: none;
                -webkit-user-select: none;
                -o-user-select: none;
                user-select: none;
            }
    
            body {
                background: radial-gradient(circle, #fff, #aaa);
                background: -webkit-radial-gradient(circle, #fff, #aaa);
                background: -o-radial-gradient(circle, #fff, #aaa);
                background: -moz-radial-gradient(circle, #fff, #aaa);
                background-size: cover;
            }
    
            #calculator {
                width: 325px;
                height: auto;
                margin: 100px auto;
                padding: 20px;
                background: linear-gradient(#9dd2ea, #8bceec);
                background: -o-linear-gradient(#9dd2ea, #8bceec);
                background: -webkit-linear-gradient(#9dd2ea, #8bceec);
                background: -moz-linear-gradient(#9dd2ea, #8bceec);
                border-radius: 5px;
                box-shadow: 0 7px 8px #0000ff
            }
    
            .keys, .head {
                overflow: hidden;
            }
    
            .keys span, .clear {
                float: left;
                width: 66px;
                height: 40px;
                margin: 0 5px 10px 8px;
                text-align: center;
                line-height: 40px;
                border-radius: 3px;
                background: #eee;
                box-shadow: 0 5px 1px #999;
                cursor: pointer;
                transition: all 0.3s ease;
            }
    
            .keys span:hover {
                background: #87cefa;
                box-shadow: 0 5px 1px #1e90ff;
                color: #fff;
            }
    
            .keys .sign {
                background: #fffacd;
            }
    
            .clear {
                float: left;
                background: #ffb6c1;
                box-shadow: 0 5px 1px #ff86c1;
            }
    
            .clear:hover {
                background: #ff96a1;
                box-shadow: 0 5px 1px #ff4691;
                color: #fff;
            }
    
            .show {
                width: 213px;
                height: 40px;
                float: right;
                margin: 0 16px 5px 0;
                border-radius: 3px;
                background: #999;
                font-size: 20px;
                line-height: 40px;
                text-align: right;
                padding-right: 10px;
                box-shadow: inset 0 4px 5px #333;
            }
        </style>
    </head>
    <body>
    <div id="calculator">
        <div class="head">
            <span class="clear">c</span>
            <div class="show"></div>
        </div>
        <div class="keys">
            <span>7</span>
            <span>8</span>
            <span>9</span>
            <span class="sign">+</span>
            <span>4</span>
            <span>5</span>
            <span>6</span>
            <span class="sign">-</span>
            <span>1</span>
            <span>2</span>
            <span>3</span>
            <span class="sign">*</span>
            <span>0</span>
            <span>.</span>
            <span>=</span>
            <span class="sign">/</span>
        </div>
    </div>
    <script>
        window.onload = function () {
            var oShow = getByClass("calculator", "show")[0];
            var aNum = document.getElementById("calculator").getElementsByTagName("span");
            for (var i = 0, iLen = aNum.length; i < iLen; i++) {
                aNum[i].onclick = function () {
                    var oShowVal = oShow.innerHTML;
                    var oNumVal = this.innerHTML;
                    var num1, num2 = null;
                    num1 = oShowVal;
                    //判断按键
                    if (oNumVal == "c") {
                        oShow.innerHTML = "";
                    }
                    else if (oNumVal == "=") {
                        var oResult = eval(oShowVal);
                        console.log(oResult);
                        oShow.innerHTML = oResult==undefined?'0':oResult;
                    }
                    else {
                        oShow.innerHTML += oNumVal;
                    }
                }
            }
        };
        function getByClass(root, sClass) {
            var obj = document.getElementById(root);
            var arr = [];
            var aItems = obj.getElementsByTagName("*");
            for (var i = 0; i < aItems.length; i++) {
                if (aItems[i].className == sClass) {
                    arr.push(aItems[i]);
                }
            }
            return arr;
        }
    </script>
    </body>
    </html>