우아한 프로그래밍
Published 2016. 9. 9. 15:40
[JAVASCRIPT/실습] 자바스크립트를 이용한 아주 간단한 계산기
카테고리 없음
자바스크립트를 이용하여 간단하게 계산기를 만들어 보았습니다.
물론 현재 오류는 존재합니다.
만든 목적은 그냥 아주 간단한 계산기를 만들기 위함입니다.
[소스코드]
<!DOCTYPE html> <head> <meta charset="EUC-KR"> <title>계산기</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.css"> <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script> <script> function Calculator(){ var self = this; this.input = $("#calcInput span"); this.bindEvent = function(){ $("td").on("click", function(){ var key = $(this).text(); var value = self.input.text() == '0' ? '' : self.input.text(); if( key == '='){ value = value.replace(/×/gi, '*'); self.input.text( eval("(" + value + ")")); } else{ self.input.text( value + key); } }) console.log("BindEvent();") } this.reset = function(){ this.input.text("0"); } this.init = function(){ this.reset(); this.bindEvent(); } }; $(document).ready(function(){ var calc = new Calculator(); calc.init(); }) </script> <style> #wrap { width: 400px; height: 500px; margin: 0 auto; margin-top: 10%; border: 1px solid black; border-radius:6px; padding: 10px 5px 5px 5px; background: url("D:/dev/workspace/Calc/html/Green-Natural-Background-Vector-Illustration.jpg") no-repeat; } #calcBtnTable { text-align : center; width: 100%; height: 380px; border-spacing: 5px; border-collapse: separate; position: relative; margin-top : 5px; margin-bottom : 5px; } #calcTitle { height:50px; width : 100%; text-align: center; font-size: 20px; font-weight: bold; display: table; } #calcTitle span { display: table-cell; text-align: left; vertical-align: middle; text-align: center; } #calcInput { height:50px; width : 100%; border: 1px solid black; border-radius:6px; font-size: 18px; text-align: right; display: table; padding-right: 10px; } #calcInput span { display: table-cell; text-align: left; vertical-align: middle; text-align: right; } table td { vertical-align: middle; font-weight: bold; font-size: 22px; background-color: #D5D5D5; border-radius:6px; border: 1px solid black; } </style> </head> <div id="wrap"> <div id="calcTitle"><span>계산기</span></div> <div id="calcInput"><span>100000000000</span></div> <table id="calcBtnTable"> <tr> <td value='7'>7</td> <td value='8'>8</td> <td value='9'>9</td> <td value='÷'>÷</td> </tr> <tr> <td value='4'>4</td> <td value='5'>5</td> <td value='6'>6</td> <td value='×'>×</td> </tr> <tr> <td value='1'>1</td> <td value='2'>2</td> <td value='3'>3</td> <td value='-'>-</td> </tr> <tr> <td value='0'>0</td> <td value='.'>.</td> <td value='='>=</td> <td value='+'>+</td> </tr> </table> </div>
[결과]
공유하기
게시글 관리
우아한 프로그래밍
저작자표시
(새창열림)
우아한 프로그래밍
@자바조아!
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!
검색 태그
java file write
버블소팅
쿠키종류
mvc 모델 구조
이클립스 서버
톰캣
쿠버네티스 클러스터 삭제
금리 정책
크롬
버추얼박스 리눅스
JavaScript
Nat Network
setinterval 동작 안함
개발 오토
http쿠키란
크롬 userAgent 변경
ERD
버추얼박스 네트워크 설정
쿠버네티스 세팅을 위한 nat network 설정
이클립스
java file read
java
경제 분석
디자인패턴
스프링부트
응답모델
요청모델
setinterval 지연
개발자 오토핫키
자바
티스토리툴바