123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 |
- $(document).ready(function() {
- var displayBox = document.getElementById("display");
- var hasEvaluated = false;
- //CHECK IF 0 IS PRESENT. IF IT IS, OVERRIDE IT, ELSE APPEND VALUE TO DISPLAY
- function clickNumbers(val) {
- if (displayBox.innerHTML === "0" || (hasEvaluated == true && !isNaN(displayBox.innerHTML))) {
- displayBox.innerHTML = val;
- } else {
- displayBox.innerHTML += val;
- }
- hasEvaluated = false;
- }
- //PLUS MINUS
- $("#plus_minus").click(function() {
- if (eval(displayBox.innerHTML) > 0) {
- displayBox.innerHTML = "-" + displayBox.innerHTML;
- } else {
- displayBox.innerHTML = displayBox.innerHTML.replace("-", "");
- }
- });
- //ON CLICK ON NUMBERS
- $("#calu-w3ls").click(function() {
- displayBox.innerHTML = "0";
- $("#display").css("font-size", "4.286rem");
- // $("#display").css("margin-top", "110px");
- $("button").prop("disabled", false);
- });
- $("#one").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(1);
- });
- $("#two").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(2);
- });
- $("#three").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(3);
- });
- $("#four").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(4);
- });
- $("#five").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(5);
- });
- $("#six").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(6);
- });
- $("#seven").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(7);
- });
- $("#eight").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(8);
- });
- $("#nine").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(9);
- });
- $("#zero").click(function() {
- checkLength(displayBox.innerHTML);
- clickNumbers(0);
- });
- $("#decimal").click(function() {
- if (displayBox.innerHTML.indexOf(".") === -1 ||
- (displayBox.innerHTML.indexOf(".") !== -1 && displayBox.innerHTML.indexOf("+") !== -1) ||
- (displayBox.innerHTML.indexOf(".") !== -1 && displayBox.innerHTML.indexOf("-") !== -1) ||
- (displayBox.innerHTML.indexOf(".") !== -1 && displayBox.innerHTML.indexOf("×") !== -1) ||
- (displayBox.innerHTML.indexOf(".") !== -1 && displayBox.innerHTML.indexOf("÷") !== -1)) {
- clickNumbers(".");
- }
- });
- //OPERATORS
- $("#add").click(function() {
- evaluate();
- checkLength(displayBox.innerHTML);
- displayBox.innerHTML += "+";
- });
- $("#subtract").click(function() {
- evaluate();
- checkLength(displayBox.innerHTML);
- displayBox.innerHTML += "-";
- });
- $("#multiply").click(function() {
- evaluate();
- checkLength(displayBox.innerHTML);
- displayBox.innerHTML += "×";
- });
- $("#divide").click(function() {
- evaluate();
- checkLength(displayBox.innerHTML);
- displayBox.innerHTML += "÷";
- });
- $("#square").click(function() {
- var num = Number(displayBox.innerHTML);
- num = num * num;
- checkLength(num);
- displayBox.innerHTML = num;
- });
- $("#sqrt").click(function() {
- var num = parseFloat(displayBox.innerHTML);
- num = Math.sqrt(num);
- displayBox.innerHTML = Number(num.toFixed(5));
- });
- $('#equals').click(function() {
- evaluate();
- hasEvaluated = true;
- });
- //EVAL FUNCTION
- function evaluate() {
- displayBox.innerHTML = displayBox.innerHTML.replace(",", "");
- displayBox.innerHTML = displayBox.innerHTML.replace("×", "*");
- displayBox.innerHTML = displayBox.innerHTML.replace("÷", "/");
- if (displayBox.innerHTML.indexOf("/0") !== -1) {
- $("#display").css("font-size", "60px");
- // $("#display").css("margin-top", "124px");
- $("button").prop("disabled", false);
- $(".calu-w3ls").attr("disabled", false);
- displayBox.innerHTML = "Undefined";
- }
- var evaluate = eval(displayBox.innerHTML);
- if (evaluate.toString().indexOf(".") !== -1) {
- evaluate = evaluate.toFixed(5);
- }
- checkLength(evaluate);
- displayBox.innerHTML = evaluate;
- }
- //CHECK FOR LENGTH & DISABLING BUTTONS
- function checkLength(num) {
- if (num.toString().length > 7 && num.toString().length < 14) {
- $("#display").css("font-size", "60px");
- // $("#display").css("margin-top", "174px");
- } else if (num.toString().length > 16) {
- num = "Infinity";
- $("button").prop("disabled", true);
- $(".calu-w3ls").attr("disabled", false);
- }
- }
- //TRIM IF NECESSARY
- function trimIfNecessary() {
- var length = displayBox.innerHTML.length;
- if (length > 7 && length < 14) {
- $("#display").css("font-size", "60px");
- // $("#display").css("margin-top", "174px");
- } else if (length > 14) {
- displayBox.innerHTML = "Infinity";
- $("button").prop("disabled", true);
- $(".calu-w3ls").attr("disabled", false);
- }
- }
- });
|