jQuery實(shí)現(xiàn)簡(jiǎn)易計(jì)算器功能
jQuery制作一個(gè)簡(jiǎn)易計(jì)算器,供大家參考,具體內(nèi)容如下
頁(yè)面效果:
源碼:
<!DOCTYPE html> <html> <head> ? ? <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ? ? <title></title> ? ? <meta charset="utf-8" /> ? ? <style> ? ? ? ? #all { ? ? ? ? ? ? width: 600px; ? ? ? ? ? ? margin: 0px auto; ? ? ? ? ? ? background-color: deepskyblue; ? ? ? ? ? ? height: 400px; ? ? ? ? ? ? padding-top: 20px; ? ? ? ? } ? ? ? ? #myCal { ? ? ? ? ? ? width: 500px; ? ? ? ? ? ? height: 300px; ? ? ? ? ? ? margin: 0px auto; ? ? ? ? } ? ? ? ? table { ? ? ? ? ? ? border-collapse: collapse; ? ? ? ? ? ? text-align: center; ? ? ? ? } ? ? ? ? td { ? ? ? ? ? ? border: 1px solid white; ? ? ? ? } ? ? ? ? button { ? ? ? ? ? ? width: 96px; ? ? ? ? ? ? height: 40px; ? ? ? ? ? ? font-size: 26px; ? ? ? ? ? ? font-family: "宋體"; ? ? ? ? ? ? color: navy; ? ? ? ? ? ? background-color:white; ? ? ? ? } ? ? </style> ? ? <script src="js/jquery-1.8.2.min.js"></script> ? ? <script> ? ? ? ? var Num1 = ""; ?//存放數(shù)字1 ? ? ? ? var Num2 = ""; ?//存放數(shù)字2 ? ? ? ? var Char = ""; ?//存放運(yùn)算符 ? ? ? ? var Result = "";//存放結(jié)果 ? ? ? ? $(function () {//頁(yè)面加載時(shí)綁定事件 ? ? ? ? ? ? $("button").hover(function () { ? ? ? ? ? ? ? ? $(this).css({"background-color":"orange","color":"white"});//鼠標(biāo)懸停時(shí)更改背景顏色與字體顏色 ? ? ? ? ? ? }, function () { ? ? ? ? ? ? ? ? $(this).css({ "background-color": "white", "color": "navy" }); ? ? ? ? ? ? }); ? ? ? ? ? ? //給運(yùn)算符添加點(diǎn)擊事件 ? ? ? ? ? ? $('.char').click(function () { ? ? ? ? ? ? ? ? if (Num2 == "") { ? ? ? ? ? ? ? ? ? ? Char = $(this).text(); ? ? ? ? ? ? ? ? ? ? $('#content').val(Num1 + Char); ? ? ? ? ? ? ? ? } else if(Num2!="") { ? ? ? ? ? ? ? ? ? ? switch (Char) {//當(dāng)Num2存在時(shí) 代表兩個(gè)數(shù)字已存在,并點(diǎn)了一個(gè)新運(yùn)算符 ?則直接進(jìn)行運(yùn)算 ? ? ? ? ? ? ? ? ? ? ? ? case "+": ? ? ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) + parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case "-": ? ? ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) - parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case "*": ? ? ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) * parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? ? ? case "/": ? ? ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) / parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? ? ? Num2 = "";//清空Num2的值 ? ? ? ? ? ? ? ? ? ? Num1 = Result;//將結(jié)果的值賦值給Num1 ? ? ? ? ? ? ? ? ? ? Char = $(this).text();//更新下一次點(diǎn)擊 的運(yùn)算符 ? ? ? ? ? ? ? ? ? ? $('#content').val(Num1 + Char);//將更新完的運(yùn)算符 和結(jié)果一起拼接到文本框中 ? ? ? ? ? ? ? ? } ? ? ? ? ? ? }); ? ? ? ? ? ? //給數(shù)字添加點(diǎn)擊事件 ? ? ? ? ? ? $('.num').click(function () { ? ? ? ? ? ? ? ? var txt = $(this).text();//拿到當(dāng)前點(diǎn)擊的數(shù)字按鈕 ? ? ? ? ? ? ? ? if (Char == "") {//如果運(yùn)算符為空 則代表第一次點(diǎn)擊 或者點(diǎn)擊了等于號(hào)? ? ? ? ? ? ? ? ? ? ? if (Result != Num1) {//如果Result!=Num1 則代表 沒有點(diǎn)擊=號(hào) ? ? ? ? ? ? ? ? ? ? ? ? Num1 = Num1 + txt;//正常拼接 ? ? ? ? ? ? ? ? ? ? ? ? $('#content').val(Num1);//顯示 ? ? ? ? ? ? ? ? ? ? } else {//點(diǎn)擊了=號(hào) ? ? ? ? ? ? ? ? ? ? ? ? Num1 = "";//清空Num1值 ?以免 等于號(hào)計(jì)算出的結(jié)果直接拼接了新的值 ? ? ? ? ? ? ? ? ? ? ? ? Num1 = Num1 + txt;//拼接新的輸入值 ? ? ? ? ? ? ? ? ? ? ? ? $('#content').val(Num1);//顯示 ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? }else { ? ? ? ? ? ? ? ? ? ? Num2 = Num2 + txt;//如果運(yùn)算符已存在 則輸入的是第二個(gè)數(shù) ? ? ? ? ? ? ? ? ? ? $('#content').val(Num1 + Char + Num2);//拼接 ? ? ? ? ? ? ? ? } ? ? ? ? ? ? }); ? ? ? ? ? ? $(".clear").click(function () {//歸零按鈕 清空所有值 并將輸入框按鈕的值還原成0? ? ? ? ? ? ? ? ? Num1 = ""; ? ? ? ? ? ? ? ? Num2 = ""; ? ? ? ? ? ? ? ? Char = ""; ? ? ? ? ? ? ? ? Result = ""; ? ? ? ? ? ? ? ? $('#content').val("0"); ? ? ? ? ? ? }); ? ? ? ? ? ? $(".result").click(function () { ? ? ? ? ? ? ? ? switch (Char) {//做一個(gè)判斷,不同的運(yùn)算符做不同的運(yùn)算 ? ? ? ? ? ? ? ? ? ? case "+": ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) + parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? case "-": ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) - parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? case "*": ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) * parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? case "/": ? ? ? ? ? ? ? ? ? ? ? ? Result = parseFloat(Num1) / parseFloat(Num2); ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? $('#content').val(Result); ? ? ? ? ? ? ? ? Num1 = Result;//將計(jì)算結(jié)果賦值給Num1 ? ? ? ? ? ? ? ? Char = "";//在這里清空原有的運(yùn)算符 以跟直接點(diǎn)擊+-/*運(yùn)算符區(qū)分開 ? ? ? ? ? ? ? ? Num2 = "";//清空Num2的值 ? ? ? ? ? ? }); ? ? ? ? }); ? ? </script> </head> <body> ? ? <div id="all"> ? ? ? ? <div id="myCal"> ? ? ? ? ? ? <div style="margin:auto;text-align:center;font-size:20px;font-family:'宋體';color:navy'">jQuery簡(jiǎn)易計(jì)算器</div> ? ? ? ? ? ? <table style="margin-top:20px;"> ? ? ? ? ? ? ? ? <tr> ? ? ? ? ? ? ? ? ? ? <td colspan="4"><input id="content" value="0" style="height:40px;width:490px;font-size:30px;color:blue;font-family:'宋體';text-align:right" /></td> ? ? ? ? ? ? ? ? </tr> ? ? ? ? ? ? ? ? <tr> ? ? ? ? ? ? ? ? ? ? <td><button class="num">7</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="num">8</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="num">9</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="char">+</button></td> ? ? ? ? ? ? ? ? </tr> ? ? ? ? ? ? ? ? <tr> ? ? ? ? ? ? ? ? ? ? <td><button class="num">4</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="num">5</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="num">6</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="char">-</button></td> ? ? ? ? ? ? ? ? </tr> ? ? ? ? ? ? ? ? <tr> ? ? ? ? ? ? ? ? ? ? <td><button class="num">1</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="num">2</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="num">3</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="char">*</button></td> ? ? ? ? ? ? ? ? </tr> ? ? ? ? ? ? ? ? <tr> ? ? ? ? ? ? ? ? ? ? <td><button class="num">0</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="clear">C</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="char">/</button></td> ? ? ? ? ? ? ? ? ? ? <td><button class="result">=</button></td> ? ? ? ? ? ? ? ? </tr> ? ? ? ? ? ? </table> ? ? ? ? </div> ? ? </div> </body> </html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- jQuery實(shí)現(xiàn)簡(jiǎn)單計(jì)算器
- jquery實(shí)現(xiàn)計(jì)算器小功能
- jQuery實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能
- jQuery實(shí)現(xiàn)可以計(jì)算進(jìn)制轉(zhuǎn)換的計(jì)算器
- jQuery實(shí)現(xiàn)計(jì)算器功能
- jQuery實(shí)現(xiàn)的簡(jiǎn)單在線計(jì)算器功能
- 基于HTML+CSS,jQuery編寫的簡(jiǎn)易計(jì)算器后續(xù)(添加了鍵盤監(jiān)聽)
- 一個(gè)簡(jiǎn)單的jQuery計(jì)算器實(shí)現(xiàn)了連續(xù)計(jì)算功能
- jQuery實(shí)現(xiàn)簡(jiǎn)易的計(jì)算器
相關(guān)文章
jquery點(diǎn)擊頁(yè)面任何區(qū)域?qū)崿F(xiàn)鼠標(biāo)焦點(diǎn)十字效果
鼠標(biāo)點(diǎn)擊聚焦,地圖定位,在圖片上突出顯示,焦點(diǎn)定位頁(yè)面元素,這些都是在系統(tǒng)開發(fā)是經(jīng)常需要用到的,下面為大家介紹下具體的實(shí)現(xiàn),感興趣的朋友可以參考下哈2013-06-06EasyUi 打開對(duì)話框后控件賦值及賦值后不顯示的問題解決辦法
這篇文章主要介紹了easyUi 打開對(duì)話框后控件賦值,以及賦值后不顯示的問題解決辦法,解決方法非常簡(jiǎn)單,只需要將賦值語(yǔ)句修改下就好,下面小編給大家簡(jiǎn)單介紹下,需要的朋友參考下2017-01-01jQuery實(shí)現(xiàn)的點(diǎn)擊按鈕改變樣式功能示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)的點(diǎn)擊按鈕改變樣式功能,涉及jQuery基于事件響應(yīng)的頁(yè)面元素樣式動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-07-07Jquery validation remote 驗(yàn)證的緩存問題解決方法
這篇文章主要介紹了Jquery validation remote 驗(yàn)證的緩存問題的解決方法 ,需要的朋友可以參考下2014-03-03jQuery md5加密插件jQuery.md5.js用法示例
這篇文章主要介紹了jQuery md5加密插件jQuery.md5.js用法,結(jié)合實(shí)例形式簡(jiǎn)單分析了jQuery md5加密插件jquery.md5.js的簡(jiǎn)單使用技巧,需要的朋友可以參考下2018-08-08