JavaScript を使用した Web 計算機の作成

JavaScript を使用した Web 計算機の作成

この記事は主にJavaScriptを使用してWeb計算機を実現する効果を記録し、参考として掲載しています。具体的な内容は次のとおりです。

簡単に言うと、コードは次のようになります。

まず HTML コードです:

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
    <メタ文字セット="UTF-8">
    <title>js を使用して Web 計算機を実装する</title>
    <link rel="スタイルシート" href="cal.css" >
</head>
<本文>
<div id="コンテナ" class="コンテナ">
    <input id="結果" class="結果">
    <div id="cal" class="clearfix">
        <div id="num" class="fl">
            <div id="top" class="clearfix">
                <input id="クリア" type="ボタン" 値="C">
                <input id="antonyms" type="button" value="+/-">
                <input id="残り" type="button" value="%">
            </div>
            <div id="bonttom" class="clearfix">
                <入力タイプ="ボタン" 値="7">
                <入力タイプ="ボタン" 値="8">
                <入力タイプ="ボタン" 値="9">
                <入力タイプ="ボタン" 値="4">
                <入力タイプ="ボタン" 値="5">
                <入力タイプ="ボタン" 値="6">
                <入力タイプ="ボタン" 値="1">
                <入力タイプ="ボタン" 値="2">
                <入力タイプ="ボタン" 値="3">
                <input class="zero" type="button" value="0">
                <input type="button" value=".">
            </div>
        </div>
        <div id="math" class="fr math">
            <input type="button" value="/" onclick="onclicknum('/')">
            <input type="button" value="*" onclick="onclicknum('*')">
            <input type="button" value="+" onclick="onclicknum('+')">
            <input type="button" value="-" onclick="onclicknum('-')">
        </div>
        <input id="res" type="button" value="=">
    </div>
</div>
</本文>
</html>

次は CSS スタイル コードです。

* {
    マージン: 0px;
    パディング: 0px;
}

.clearfix:before、.clearfix:after {
    コンテンツ: '';
    表示: ブロック;
}

.clearfix:後{
    クリア: 両方;
}

.clearfix {
    _ズーム: 1;
}

入力{
    表示: ブロック;
}

。容器 {
    幅: 240ピクセル;
    高さ: 400px;
    境界線: 2px 実線 #eb4509;
    マージン: 100px 自動;
}

.fl {
    フロート: 左;
}

.fr {
    フロート: 右;
}

入力{
    幅: 60ピクセル;
    高さ: 60px;
    境界線: 1px実線 #000;
    フロート: 左;
    背景: #ddd;
    フォントサイズ: 24px;
    色: #eb4509;
    -webkit-box-sizing: 境界線ボックス;
    -moz-box-sizing: 境界線ボックス;
    ボックスのサイズ: 境界線ボックス;
}

.math 入力 {
    フロート: なし;
}

入力.ゼロ{
    幅: 120ピクセル;
}

#番号{
    幅: 180ピクセル;
}

#cal #math {
    幅: 60ピクセル;
}

。結果 {
    幅: 100%;
    高さ: 100px;
    行の高さ: 100px;
    境界線: なし;
    背景色: #dfdfdf;
    フォントサイズ: 30px;
    フロート: なし;
    アウトライン: なし;
    テキスト配置: 右;
    右パディング: 20px;
    -webkit-box-sizing: 境界線ボックス;
    -moz-box-sizing: 境界線ボックス;
    ボックスのサイズ: 境界線ボックス;
}

最後に、js コード:

<script type="text/javascript">
    var 数値結果;
    var 文字列;

    var フラグ;
    var bot = document.getElementById("bonttom");
    var botInputs = bot.getElementsByTagName("入力");
    var clear = document.getElementById("clear");
    var res = document.getElementById("res");
    var math = document.getElementById("math");
    var mathInputs = math.getElementsByTagName("入力");
    var antonymsBtn = document.getElementById("antonyms");
    var 残りBtn = document.getElementById("残り");


    //数字をクリックして、加算、減算、乗算、除算を実行します。 imporIn(botInputs);
// 数学入力をイ​​ンポートします。

    関数imporIn(eles) {
        (var i = 0; i < eles.length; i++) の場合 {
            eles[i].onclick = 関数 () {
                onclicknum(この値);
            }
        }
    }

    //cボタンをクリアするにはクリックします clear.onclick = function () {
        クリッククリア();
    }

    //=記号をクリックして結果を取得します res.onclick = function () {
        クリック結果();
    }

    //+/-をクリック
    antonymsBtn.onclick = 関数 () {
        反意語();
    }

    //クリック %
    残りBtn.onclick = 関数(){
        残り();
    }

    関数 onclicknum(nums) {
        if (フラグ) {
            console.log("num=" + 数値);
            if (数値 !== "/" && 数値 !== "+" && 数値 !== "-" && 数値 !== "*") {
                str.value = "";

                console.log("aa" + 数値);
            }
        }
        フラグ = false;
        str = document.getElementById("結果");
        str.value = str.value + nums;
    }

    //クリア関数 onclickclear() {
        str = document.getElementById("結果");
        str.value = "";
    }

    //結果を取得する関数 onclickresult() {
        str = document.getElementById("結果");
        numresult = eval(str.value);
        str.value = numresult;
        フラグ = true;
    }

    //正と負の数関数antonyms() {
        str = document.getElementById("結果");
        str.値 = -str.値;
    }

    //%
    関数の剰余() {
        str = document.getElementById("結果");
        str.値 = str.値 / 100;
    }
</スクリプト>

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • HTML+JS に基づくシンプルな年齢計算ツールの実装
  • ネイティブ JavaScript を使用した Web 計算機の実装
  • JavaScriptで計算機機能を実現するプロセスの詳細な説明
  • JavaScriptはシンプルな計算機能を実装します
  • 計算機機能を実現するjsバージョン
  • シンプルな計算機を実装するためのネイティブ js
  • JavaScript で簡単な計算機を実装する
  • JavaScript の例 - 計算機の実装

<<:  VMware で VMware ツールをインストールしてもインストール ファイルが表示されない問題を解決する方法

>>:  無料のパブリック STUN サーバー

推薦する

子ども向けウェブサイトの視覚構造レイアウト設計手法の分析

1. 温かくて優しい関連アドレス: http://www.web-designers.cn/post...

Vue3 の動的コンポーネントはどのように機能しますか?

目次1. コンポーネントの登録1.1 グローバル登録1.2 グローバルコンポーネントの登録プロセス1...

docker で golang イメージに基づいて ssh サービスを構築する方法

以下は、docker の golang イメージに基づいて ssh サービスを構築するためのコードで...

MySQLの空の値とnull値の違いを知っていますか?

序文最近、友人がSQLを書くときにnull値を判定する方法が間違っていて、プログラム内のデータにエラ...

MySQL Innodbの主な機能挿入バッファ

目次挿入バッファとは何ですか?挿入バッファのトリガー条件は何ですか?なぜ一意のインデックスにできない...

MySQL 入門 - 概念

1. それは何ですか? MySQL は最も人気のあるリレーショナル データベース管理システムです。W...

MySQLの構文、特殊記号、正規表現の詳細な説明

Mysql でよく使用される表示コマンド1. 現在のデータベース サーバー内のデータベースの一覧を表...

ブラウザがクロージャをどのように認識するかについて詳しく説明します

目次序文クロージャの紹介メモリのゴミを識別する方法クロージャのメモリ表現結論序文クロージャは、Jav...

MySQL 変数宣言とストアド プロシージャの分析

変数の宣言グローバル変数の設定@a='新しい変数' を設定します。関数やストアドプロ...

CSSを使用して炎の効果を作成する方法

本文は以下から始まります。 123WORDPRESS.COM ダウンロード:純粋な CSS3 で超リ...

WeChatアプレット学習ノート: ページ構成とルーティング

最近、小さなプログラムの開発を勉強して見直しており、学習結果のいくつかをメモしています。公式の We...

Vueはボールのスライディングクロス効果を実現します

この記事の例では、ボールのスライドとクロスの効果を実現するためのVueの具体的なコードを共有していま...

VueはTeleportをベースにModalコンポーネントを実装します

目次1. テレポートについて知る2. テレポートの基本的な使い方3. 最初のステップの最適化4. 第...

JavaScriptを使って動的にテーブルを生成するケースの詳しい説明

目次序文実装のアイデア実装コード成果を達成する序文これは、テーブルを動的に追加する例です。[追加] ...

MySQL 権限制御の詳細な説明

目次mysql 権限制御権限システムテーブル変更後にMySQLの権限を有効にする方法権限の付与と取り...