jQuery實(shí)現(xiàn)可以計(jì)算進(jìn)制轉(zhuǎn)換的計(jì)算器
本文實(shí)例為大家分享了jQuery實(shí)現(xiàn)可以計(jì)算進(jìn)制轉(zhuǎn)換的計(jì)算器,供大家參考,具體內(nèi)容如下
在案例8的基礎(chǔ)上增加了進(jìn)制轉(zhuǎn)換功能
動(dòng)畫效果:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>計(jì)算器</title> <script src="../jquery.min.js"></script> <style> *{ margin: 0; padding: 0; } #calculator{ position: relative; margin: 50px auto; padding: 5px; width: 230px; height: 316px; background: rgb(190,210,224); } #screen{ width: 230px; height: 60px; background: rgb(153,153,153); border-radius: 5px; text-align: right; overflow: hidden; } #txt1{ height: 20px; padding-top: 10px; font-size: 10px; } #txt2{ height: 30px; font-size: 20px; } #num{ float:left; width: 130px; } #num input{ width: 40px; height: 40px; margin-top: 3px; } #del{ float:right; width: 70px; height: 30px; } #del input{ margin-top: 4px ; width: 70px; height: 31px; } #operator{ margin-top: 5px ; float:right; width: 70px; height: 180px; } #operator input{ width: 70px; height: 31px; margin-top: 4px ; } #converter{ float:right; margin-top: 5px; width: 70px; } #converter .show{ position: absolute; bottom: 5px; width: 70px; height: 30px; font-size: 10px; } #converter div{ display: none; position: absolute; left: 150px; top: 100px; } #converter div input{ width: 85px; height: 25px; margin-top: 5px; } </style> </head> <body> <div id="calculator"> <div id="screen"> <p id="txt1"></p> <p id="txt2"></p> </div> <div id="workspace"> <div id="num"> <input type="button" value="7"> <input type="button" value="8"> <input type="button" value="9"> <input type="button" value="4"> <input type="button" value="5"> <input type="button" value="6"> <input type="button" value="1"> <input type="button" value="2"> <input type="button" value="3"> <input type="button" value="Cle"> <input type="button" value="0"> <input type="button" value="."> <input type="button" value="A"> <input type="button" value="B"> <input type="button" value="C"> <input type="button" value="D"> <input type="button" value="E"> <input type="button" value="F"> </div> <div id="del"> <input type="button" value="←"> </div> <div id="operator"> <input type="button" value="+"> <input type="button" value="-"> <input type="button" value="*"> <input type="button" value="/"> <input type="button" value="="> </div> <div id="converter"> <div> <input type="button" value="十轉(zhuǎn)十六進(jìn)制" name="1"> <input type="button" value="十轉(zhuǎn)八進(jìn)制" name="2"> <input type="button" value="十轉(zhuǎn)二進(jìn)制" name="3"> <input type="button" value="十六轉(zhuǎn)十進(jìn)制" name="4"> <input type="button" value="八轉(zhuǎn)十進(jìn)制" name="5"> <input type="button" value="二轉(zhuǎn)十進(jìn)制" name="6"> </div> <input class="show" type="button" value="進(jìn)制轉(zhuǎn)換"> </div> </div> </div> <script> $(function(){ var i=0;//i為清空標(biāo)志,i=1時(shí)需要清空#txt2的數(shù)據(jù) //獲取輸入的數(shù)字 $("#num input").click(function () { //先判斷#txt2中是否保存著上次計(jì)算的結(jié)果,如果是則將其清空 if (i===1){ $("#txt2").text(""); } //保證數(shù)字以正確的格式顯示 //使用switch語(yǔ)句實(shí)現(xiàn) switch ($(this).val()){ case "Cle": $("#txt2").text(""); break; case ".": if ($("#txt2").text().indexOf(".") != -1) { break; }else{$("#txt2").append($(this).val());} break; default: if ($("#txt2").text() === "0") { $("#txt2").text($(this).val()); }else{ $("#txt2").append($(this).val()); } } i=0;//將清空標(biāo)志設(shè)為0 }); //獲取運(yùn)算符 $("#operator input:not(:last)").click(function () { $("#txt1").text($("#txt2").text()+$(this).val()); $("#txt2").text(""); }); //按下“=”鍵進(jìn)行計(jì)算 $("#operator input").last().click(function () { //使用eval()函數(shù) //$("#txt2").text(eval($("#txt1").text()+$("#txt2").text())); //使用常規(guī)方法 var str=$("#txt1").text(); var n1=parseFloat(str); var n2=parseFloat($("#txt2").text()); var cal=str[str.length-1]; switch (cal){ case "+": $("#txt2").text( n1+n2); break; case "-": $("#txt2").text( n1-n2); break; case "*": $("#txt2").text( n1*n2); break; case "/": $("#txt2").text( n1/n2); break; default: break; } $("#txt1").text( ""); i=1;//將清空標(biāo)志設(shè)為1 }); //按下“←”回刪數(shù)字 $("#del").click(function () { var str=$("#txt2").text(); if (i==0) { $("#txt2").text(str.slice(0, str.length - 1)); } }); //按下“進(jìn)制轉(zhuǎn)換”,出現(xiàn)幾種進(jìn)制轉(zhuǎn)換按鈕 $("#converter .show").click(function () { $("#converter div").toggle(); $("#operator").toggle(); }); //進(jìn)行進(jìn)制轉(zhuǎn)換 $("#converter div input").click(function () { var index=this.name; var n=$("#txt2").text(); switch (index){ case "1": n=parseInt(n,10); $("#txt2").text(n.toString(16)); break; case "2": n=parseInt(n,10); $("#txt2").text(n.toString(8)); break; case "3": n=parseInt(n,10); $("#txt2").text(n.toString(2)); break; case "4": n=parseInt(n,16); $("#txt2").text(n.toString(10)); break; case "5": n=parseInt(n,8); $("#txt2").text(n.toString(10)); break; case "6": n=parseInt(n,2); $("#txt2").text(n.toString(10)); break; } i=1;//將清空標(biāo)志設(shè)為1 }); }); </script> </body> </html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- jQuery實(shí)現(xiàn)簡(jiǎn)易計(jì)算器功能
- jQuery實(shí)現(xiàn)簡(jiǎn)單計(jì)算器
- jquery實(shí)現(xiàn)計(jì)算器小功能
- jQuery實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能
- jQuery實(shí)現(xiàn)計(jì)算器功能
- jQuery實(shí)現(xiàn)的簡(jiǎn)單在線計(jì)算器功能
- 基于HTML+CSS,jQuery編寫的簡(jiǎn)易計(jì)算器后續(xù)(添加了鍵盤監(jiān)聽(tīng))
- 一個(gè)簡(jiǎn)單的jQuery計(jì)算器實(shí)現(xiàn)了連續(xù)計(jì)算功能
- jQuery實(shí)現(xiàn)簡(jiǎn)易的計(jì)算器
相關(guān)文章
jQuery 動(dòng)態(tài)云標(biāo)簽插件
這里推薦給大家一款jquery動(dòng)態(tài)云標(biāo)簽的插件,非常的炫,在指定塊級(jí)元素內(nèi)動(dòng)態(tài)生成a標(biāo)簽,a標(biāo)簽的高度、寬度、位置、層數(shù)、背景顏色隨機(jī)可控,a標(biāo)簽漸隱顯示和漸隱消失,可改變初始化的透明度,鼠標(biāo)懸浮停止動(dòng)畫且透明度最大,層數(shù)最高,鼠標(biāo)離開(kāi),恢復(fù)之前狀態(tài)2014-11-11JQuery實(shí)現(xiàn)Ajax加載圖片的方法
這篇文章主要介紹了JQuery實(shí)現(xiàn)Ajax加載圖片的方法,涉及jQuery基于緩存獲取圖片的技巧,需要的朋友可以參考下2015-12-12淺談jquery選擇器 :first與:first-child的區(qū)別
下面小編就為大家?guī)?lái)一篇淺談jquery選擇器 :first與:first-child的區(qū)別。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-11-11jQuery插件之jQuery.Form.js用法實(shí)例分析(附demo示例源碼)
這篇文章主要介紹了jQuery插件之jQuery.Form.js用法,結(jié)合實(shí)例形式分析了jQuery.Form.js的具體使用技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-01-01jQuery中filter(),not(),split()使用方法
jQuery下一些查找過(guò)濾功能filter(),not(),split()用法,可以讓jquery更容易的操作控制頁(yè)面元素。2010-07-07jQuery實(shí)現(xiàn)動(dòng)態(tài)添加和刪除一個(gè)div
我想做一個(gè)可以動(dòng)態(tài)添加刪除div的功能。中間遇到一個(gè)問(wèn)題,最后在網(wǎng)友的熱心幫助下解決了,使用到的jquery方法和思想就是:事件的綁定和銷毀(unbind)2015-08-08