この記事の例では、参考までに簡単な計算機を実装するためのjsの具体的なコードを共有しています。具体的な内容は次のとおりです。 最近、ブロガーは退屈していたので、js を使用して簡単な計算機を作成しました (ブロガーはフロントエンドではなく、バックエンドで作業しています >_<)。実際、フロントエンドの作業はとても楽しいです。自分で何かを作るのはとても充実感があります。さっそく、ソースコードをご紹介します。 <!DOCTYPE html> <html> <ヘッド> <メタ文字セット="utf-8"> <title>電卓</title> <スタイル> #b1{ テキスト配置: 中央; 背景色: 水色; 幅: 650ピクセル; 高さ: 650px; 境界線: 1px 黒一色; 左マージン: 400px; 境界線の半径: 18px; } #b2{ テキスト配置: 中央; 幅: 300ピクセル; 高さ: 80px; 上マージン: 30px; フォントファミリ: "Microsoft YaHei"; フォントサイズ: 20px; 境界線の半径: 8px; アウトライン:なし; } ul{ リストスタイルタイプ: なし; } li{ フロート: 左; 左マージン: 40px; 上マージン: 30px; } li 入力{ 幅: 100ピクセル; 高さ: 50px; 境界線の半径: 8px; フォントファミリ: "Microsoft YaHei"; フォントサイズ: 20px; アウトライン:なし; } li 入力:ホバー{ 背景色:赤; } </スタイル> <スクリプト> var beforeNum = 0; 関数 addNum(a){ beforeNum=document.getElementById("b2").value; var nowNum=beforeNum; if(beforeNum!=0){ nowNum=beforeNum+a; }それ以外{ if(beforeNum.substring(beforeNum.length-2,beforeNum.length-1)=="."){ nowNum=beforeNum+a; } if(a!="+"&&a!="-"&&a!="*"&&a!="/"&&(beforeNum.substring(beforeNum.length-2,beforeNum.length-1)!=".")){ nowNum=a; } } document.getElementById("b2").value=nowNum; } 関数 jisuan(){ document.getElementById("b2").value=eval(document.getElementById("b2").value); } 関数clearNum(){ ドキュメントの要素IDを取得する("b2")。値=0; } 関数 backAgain(){ beforeNum=document.getElementById("b2").value; if(beforeNum.length!=1){ document.getElementById("b2").value=beforeNum.substring(0,beforeNum.length-1); }そうでない場合(beforeNum.length==1){ ドキュメント.getElementById("b2").value=0; } } 関数addPoint(b){ beforeNum=document.getElementById("b2").value; if((beforeNum.indexOf(".")!=beforeNum.length-1)){ document.getElementById("b2").value=beforeNum+b; } } 関数 offCl(){ document.getElementById("b2").value=""; } </スクリプト> </head> <本文> <div id="b1"> <p style="font-size: 20px;">オンラインのシンプルな計算機</p> <div><input id="b2" name="wenben" value="0"/></div> <div> <ul> <li><input type="button" value="1" onclick="addNum(this.value);"/></li> <li><input type="button" value="2" onclick="addNum(this.value);"/></li> <li><input type="button" value="3" onclick="addNum(this.value);"/></li> <li><input type="button" value="4" onclick="addNum(this.value);"/></li> </ul> <ul> <li><input type="button" value="5" onclick="addNum(this.value);"/></li> <li><input type="button" value="6" onclick="addNum(this.value);"/></li> <li><input type="button" value="7" onclick="addNum(this.value);"/></li> <li><input type="button" value="8" onclick="addNum(this.value);"/></li> </ul> <ul> <li><input type="button" value="9" onclick="addNum(this.value);"/></li> <li><input type="button" value="0" onclick="addNum(this.value);"/></li> <li><input type="button" value="+" onclick="addNum(this.value);"/></li> <li><input type="button" value="-" onclick="addNum(this.value);"/></li> </ul> <ul> <li><input type="button" value="*" onclick="addNum(this.value);"/></li> <li><input type="button" value="/" onclick="addNum(this.value);"/></li> <li><input type="button" value="." onclick="addPoint(this.value);"/></li> <li><input type="button" value="=" onclick="jisuan();"/></li> </ul> </ul> <ul> <li><input type="button" value="戻る" onclick="backAgain();"/></li> <li><input type="button" value="クリア" onclick="clearNum();"/></li> <li><input type="button" value="シャットダウン" onclick="offCl();"/></li> </ul> </div> </div> </本文> </html> コード実行の効果図。 さらに、ブロガーは js 関数を記述する際に一連のアルゴリズム判定を実行し、いくつかの非標準アルゴリズムを除外しました。興味があれば、これらのアルゴリズム検証を拡張することができます。何かアイデアや提案があれば、ブロガーとコミュニケーションを取ることができます。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Linux で特定のユーザーまたはユーザー グループに対して SSH を有効または無効にする方法
>>: MySQL 5.7 および 8.0 データベースのルート パスワードを忘れた場合の解決策
マシンに MySQL バージョン 5.0 がすでに存在する場合は、最新バージョンの MySQL のイ...
MySQL で使用される自動インクリメント ID には多くの種類があり、各自動インクリメント ID ...
目次背景データ型を決定する方法は何ですか? 1. typeof を使用して基本データ型を決定します。...
目次1. プロジェクト環境: 2: DNSサーバーの設定i: 前方解析を構成する: ii: 逆解像度...
1. DockerはローカルディレクトリをマウントしますDocker は、ホスト上のディレクトリをイ...
以下のように表示されます。 nsenter -t 1 -m -u -n -i sh -c "...
1. 原因:サブボックスをフロートに設定した後の効果: 青いボックスをフロートに設定すると、標準のド...
1. 以前 QT5.13 バージョンをダウンロードしましたが、インストール後、Qtcreator を...
目次解決策1: EUIの転送コンポーネントをコピーして変更し、プロジェクトディレクトリに導入する解決...
MySQL 5.7 には、オンライン DDL、マルチソース レプリケーション、拡張された半同期、テー...
MySQL UTF-8 エンコーディングMySQL は 2003 年のバージョン 4.1 から U...
この記事では、MySQL 8.0.15 winx64解凍版のインストールと設定方法を紹介します。具体...
バージョン: セントロス==7.2 jdk==1.8 合流==6.15.4 jira-ソフトウェア=...
MySQLとMariaDBの関係MariaDB データベース管理システムは MySQL のブランチで...
1. インラインスタイル仮想DOMにインラインスタイルを追加するには、式を使用してスタイルオブジェク...