우아한 프로그래밍
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>
[결과]
공유하기
게시글 관리
우아한 프로그래밍
저작자표시
(새창열림)
우아한 프로그래밍
@자바조아!
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!
검색 태그
금리 정책
요청모델
setinterval 지연
개발 오토
이클립스 서버
톰캣
java
크롬
버추얼박스 리눅스
경제 분석
ERD
쿠버네티스 세팅을 위한 nat network 설정
버블소팅
자바
쿠키종류
JavaScript
버추얼박스 네트워크 설정
mvc 모델 구조
java file write
이클립스
쿠버네티스 클러스터 삭제
Nat Network
스프링부트
디자인패턴
http쿠키란
크롬 userAgent 변경
java file read
setinterval 동작 안함
개발자 오토핫키
응답모델
티스토리툴바