네이버에서 제공하고 있는 깔끔한 디자인 계산기 > script

본문 바로가기
사이트 내 전체검색

script

네이버에서 제공하고 있는 깔끔한 디자인 계산기

페이지 정보

작성자 서방님 댓글 0건 조회 118회 작성일 07-08-11 19:55

본문

<script>
_cal = 0;

function cal1( exp ) {
    var exp;
    var result;

    result = eval( "with( Math ) { " + exp + " } " );
    document.cal.calD.value = result;

    return;
}

function calculate() {
    var exp;
    var    result;

    if( e2 ) v2 = parseFloat( document.cal.calD.value );
    else v1 = parseFloat( document.cal.calD.value );

    if( !opr ) exp = v1;
    else exp = v1 + opr + v2;

    result = eval( "with( Math ) { " + exp + " } " );

    document.cal.calD.value = result;
    v1 = document.cal.calD.value;
    e2 = 0;
    ced = 1;

    return;
}

function enter_num( str ) {
    var p;
    p = document.cal.calD.value;

    if( str == "." ) if( p.indexOf( ".", 0 ) > 0 ) return;

    if( p.indexOf( ".", 0 ) < 0 && !parseFloat( p ) ) document.cal.calD.value = "";
    if( ced ) { document.cal.calD.value = ""; ced = 0; }
    document.cal.calD.value += str;

    return;
}


function enter_opr( str ) {
    if( e2 ) v2 = parseFloat( document.cal.calD.value );
    else v1 = parseFloat( document.cal.calD.value );

    if( !ced ) calculate();
    opr = str;
    e2 = 1;

    return;
}

function do_convert() {
    var cD = document.cal.calD.value;
    v1 = - cD;
    document.cal.calD.value = - cD;
    return;
}

function do_copy() {
    var range;
    document.cal.calHD.value = document.cal.calD.value;
    document.cal.calHD.select();
    range = document.cal.calHD.createTextRange();
    range.execCommand("Copy")
    return;
}

function do_clear() {
    document.cal.calD.value = 0;
    v1 = "";
    v2 = "";
    opr = "";
    ced = 0;
    e2 = 0;

    return;
}

function do_percent() {
    v2 = v1 * document.cal.calD.value / 100;
    document.cal.calD.value = v2;
    return;
}

function do_reciprocal() {
    calculate();
    var cD = document.cal.calD.value;
    document.cal.calD.value = ( 1 / cD );

    return;
}

function do_sqrt() {
    calculate();
    var cD = document.cal.calD.value;
    document.cal.calD.value = Math.sqrt( cD );
    return;
}

function do_delete() {
    var cD = document.cal.calD.value;
    cD = cD.substr( 0, ( cD.length - 1 ) );
    document.cal.calD.value = cD;

    return;
}

function do_cancel() {
    calculate();

    return false;
}

function check_mdown() {
    var e = window.event;

    if( e.srcElement.name == "query" ) {
    document.detachEvent( 'onkeydown', check_str );
    _cal = 0;
    } else {
    if( !_cal ) document.attachEvent( 'onkeydown', check_str );
    _cal = 1;
    }

    return false;
}

function check_str() {
    var e = window.event;

    if( e.shiftKey ) {

    e.cancleBubble = true;
    e.returnValue = false;

    switch( e.keyCode ) {
        case 53:        // "%"
        enter_opr( "%" );
        break;
        case 56:        // "*"
        enter_opr( "*" );
        break;
        case 187:        // "+"
        enter_opr( "+" );
        break;
        default:
        break;
    }

    } else {

    if( 48 <= e.keyCode && e.keyCode <= 57 ) {
        e.cancleBubble = true;
        e.returnValue = false;
        enter_num( String.fromCharCode( e.keyCode ) );
    } else if( 96 <= e.keyCode && e.keyCode <= 105 ) {
        e.cancleBubble = true;
        e.returnValue = false;
        enter_num( String.fromCharCode( e.keyCode - 48 ) );
    } else if( e.keyCode == 110 || e.keyCode == 190 ) {
        e.cancleBubble = true;
        e.returnValue = false;
        enter_num( "." );
    } else {
        switch( e.keyCode ) {
        case 13:
            e.cancleBubble = true;
            e.returnValue = false;
            calculate();
            break;    // enter
        case   8: break;    // back space
        case  35: break;    // end
        case  36: break;    // home
        case  37: break;    // arrow ←
        case  38: break;    // arrow ↑
        case  39: break;    // arrow →
        case  40: break;    // arrow ↓
        case  46: break;    // delete
        case 106:        // "*"
            e.cancleBubble = true;
            e.returnValue = false;
            enter_opr( "*" );
            break;
        case 107:        // "+"
            e.cancleBubble = true;
            e.returnValue = false;
            enter_opr( "+" );
            break;
        case 109:        // "-"
            e.cancleBubble = true;
            e.returnValue = false;
            enter_opr( "-" );
            break;
        case 111:        // "/"
            e.cancleBubble = true;
            e.returnValue = false;
            enter_opr( "/" );
            break;
        case 187:        // "="
            e.cancleBubble = true;
            e.returnValue = false;
            calculate();
            break;
        case 189:        // "-"
            e.cancleBubble = true;
            e.returnValue = false;
            enter_opr( "-" );
            break;
        case 191:
            e.cancleBubble = true;
            e.returnValue = false;
            enter_opr( "/" );
            break;
        default :
            e.cancleBubble = true;
            e.returnValue = false;
            break;
        }
    }

    }

    return;
}

document.write( "<table border=0 cellpadding=0 cellspacing=0>" );
document.write( "<tr>" );
document.write( "    <form name=cal onsubmit='return do_cancel();'>" );
document.write( "    <td width=34 nowrap></td>" );
document.write( "    <td>" );
document.write( "        <table border=0 cellpadding=0 cellspacing=0 width=251>" );
document.write( "        <tr><td colspan=3 height=1 nowrap bgcolor=C3CACD></td></tr>" );
document.write( "        <tr>" );
document.write( "            <td width=1 nowrap bgcolor=C3CACD></td>" );
document.write( "            <td width=249 height=147 bgcolor=F1F6F8 align=center>" );
document.write( "            <table border=0 cellpadding=0 cellspacing=0>" );
document.write( "            <tr>" );
document.write( "                <td colspan=9><textarea name=calHD style='display:none;'></textarea><input name=calD type=text size=27 style='height:23; border:1 solid C3CACD' value='0'></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='do_copy();'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code14_01.gif border=0></a></td>" );
document.write( "            </tr>" );
document.write( "            <tr><td colspan=11 height=7 nowrap></td></tr>" );
document.write( "            <tr>" );
document.write( "                <td><a href=# onclick='enter_num("7");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num7.gif border=0 alt=7></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num("8");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num8.gif border=0 alt=8></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num("9");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num9.gif border=0 alt=9></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_opr("/");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code10.gif border=0 alt=나누기></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='do_sqrt();'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code11.gif border=0 alt=√></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='do_delete();'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code12.gif border=0 alt=한칸지우기></a></td>" );
document.write( "            </tr>" );
document.write( "            <tr><td colspan=11 height=5 nowrap></td></tr>" );
document.write( "            <tr>" );
document.write( "                <td><a href=# onclick='enter_num("4");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num4.gif border=0 alt=4></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num("5");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num5.gif border=0 alt=5></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num("6");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num6.gif border=0 alt=6></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_opr("*");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code07.gif border=0 alt=곱하기></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='do_percent("%");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code08.gif border=0 alt=퍼센트></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='do_clear();'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code06.gif border=0 alt=모두지우기></a></td>" );
document.write( "            </tr>" );
document.write( "            <tr><td colspan=11 height=5 nowrap></td></tr>" );
document.write( "            <tr>" );
document.write( "                <td><a href=# onclick='enter_num("1");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num1.gif border=0 alt=1></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num("2");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num2.gif border=0 alt=2></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num("3");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num3.gif border=0 alt=3></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_opr("-");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code04.gif border=0 alt=빼기></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='do_reciprocal();'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code05.gif border=0 alt=1/x></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td rowspan=3><a href=# onclick='calculate();'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code16.gif border=0 alt==></a></td>" );
document.write( "            </tr>" );
document.write( "            <tr><td colspan=10 height=5 nowrap></td></tr>" );
document.write( "            <tr>" );
document.write( "                <td><a href=# onclick='enter_num("0");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_num0.gif border=0 alt=0></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num("00");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code15.gif border=0 alt=00></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='do_convert();'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code01.gif border=0 alt=+/-></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_num(".");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code02.gif border=0 alt=.></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "                <td><a href=# onclick='enter_opr("+");'><img src="http://www.blueb.co.kr/SRC/javascript/image2/cal_code03.gif border=0 alt=더하기></a></td>" );
document.write( "                <td width=5 nowrap></td>" );
document.write( "            </tr>" );
document.write( "            </table>" );
document.write( "            </td>" );
document.write( "            <td width=1 nowrap bgcolor=A6ACAE></td>" );
document.write( "        </tr>" );
document.write( "        <tr><td colspan=3 width=251 height=1 nowrap bgcolor=A6ACAE></td></tr>" );
document.write( "        </table>" );
document.write( "    </td>" );
document.write( "    <td>" );
document.write( "        <table border=0 cellpadding=0 cellspacing=0><tr><td width=2 height=2></td></tr><tr><td width=2 height=147 nowrap bgcolor=E0E4E6></td></tr></table>" );
document.write( "    </td>" );
document.write( "</tr>" );
document.write( "<tr>" );
document.write( "    <td></td>" );
document.write( "    <td colspan=2>" );
document.write( "        <table border=0 cellpadding=0 cellspacing=0><tr><td width=2 height=2 nowrap></td><td width=251 height=2 bgcolor=E0E4E6 nowrap></td></tr></table>" );
document.write( "    </td>" );
document.write( "    </form>" );
document.write( "</tr>" );
document.write( "</table>" );
_dom = 2;
document.onmousedown = check_mdown;
do_clear();
</script>

키보드 입력 가능합니다..

댓글목록

등록된 댓글이 없습니다.

회원로그인

접속자집계

오늘
66
어제
302
최대
1,347
전체
155,127
Latest Crypto Fear & Greed Index

그누보드5
Copyright © 서방님.kr All rights reserved.