태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.
페이지를 읽고 있습니다. ( 아쿠아바다's Blog )
분류 전체보기 (769)
쉐어포인트 (24)
Exchange (12)
SQL (121)
XML (36)
WEB (294)
O / S (97)
삶의향기 (162)
기획 (19)
RSS 피드(IE 7.0부터 기본 지원됩니다. 이전 버전 사용자는 접합한 툴을 사용하세요!!)

저작권이 정확히 어떻게 되는지는 모르겠지만.
일단 무료로 서비스되는 소스이니 사용해도 무방하지 않을까 싶습니다.






'단위변환' 다이렉트 검색
변환할값 현재단위 변환할단위 결과
단위 변환: 변환할 값에 숫자를 입력하고, 현재단위 및 변환할 단위를 선택한 후 변환하기 버튼을 누르면 단위가 변환됩니다





<script type="text/javascript">
var rege_0_type = "unit";
</script>
<style type=text/css>
.contents_unit {padding:8px 0 10px 0; min-width:760px; }
.contents_unit h3 {padding:0 0 0 14px }
</style>
<div class=contents_unit>
<table border=0 cellpadding=0 cellspacing=0 width=760><tr> <td width=10 nowrap></td>

<td nowrap><span class='p13 b'>'단위변환' 다이렉트 검색</span></td>
<td align=right><img src=http://sstatic.naver.com/search/images8/ico_arw01.gif align=absmiddle style='margin:0 3 2 0'><a class=gray01 onclick="return goOtherCR(this, 'a=drt_cvs.guide&r=0&i=0&u='+urlencode(this.href));" href='http://help.naver.com/service_intro.asp?type=service_intro&CID1=CATE20030924000079&CID2=CATE20041215000056&CID3=CATE20041215000057&CName2' target=_blank>다이렉트 검색 도움말</a></td>
<td width=5></td>
</tr>
</table>

<table border=0 cellpadding=0 cellspacing=0 width=760>
<tr><td height=13></td></tr>
</table>
<table cellspacing=0 cellpadding=0 border=0>
<tr>
    <td width=35 nowrap></td>
    <td width=667>

 <table border=0 cellpadding=0 cellspacing=1 bgcolor=#C3CACD width=100%>
 <tr>
     <td bgcolor=#FFFFFF valign=top>
  <table border=0 cellpadding=0 cellspacing=0>
  <tr height=2>
      <td width=2></td>
      <td width=146></td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=146></td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=215></td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=140></td>
      <td width=2></td>
     </tr>

     <tr height=25 align=center>
      <td width=2></td>
      <td width=146 bgcolor=#F1F6F8 style='color:#275361'>변환할값</td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=146 bgcolor=#F1F6F8 style='color:#275361'>현재단위</td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=215 bgcolor=#F1F6F8 style='color:#275361'>변환할단위</td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=140 bgcolor=#F1F6F8 style='color:#275361'>결과</td>
      <td width=2></td>
     </tr>

     <tr height=30 align=center>
      <td width=2></td>
      <td width=146><input type=text style='width:140px;height:19px;border:1px solid #C3CACD;padding:3 0 0 2;' id=sValue></td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=146>


 <!-- 현재단위 -->
   <select id='sFrom' style='font-family:굴림,gulim;font-size:12px;color:black;width:146px;height:19px;margin:0 0 -1 0;' onChange='selectFromOptions()'>
   <option value=''>- 단위를 선택하세요 -</option>
   </select>
<script type=text/javascript>
</script>
   </td>

      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=215>
 
 <!-- 환할단위 -->

   <select id='sTo' style='font-family:굴림,gulim;font-size:12px;color:black;width:146px;height:19px;margin:0 0 -1 0;'>
   <option value=''>- 단위를 선택하세요 -</option>
   </select>
   <a target=_blank onclick="goOtherCR(this, 'a=drt_cvs.contents&r=0&i=0&u='+urlencode('unitCalcDisplay()'));unitCalcDisplay();return false;" href=#><img src=http://sstatic.naver.com/search/direct/btn_ch.gif align=absmiddle></a>

   </td>
      <td width=2></td>

      <td width=1 bgcolor=#D6DEE1></td>

      <td width=2></td>
      <td width=140><input type=text style='width:140px;height:19px;border:1px solid #ACC684;background-color:#FCFFF6;padding:3 0 0 2;' id=sResult readonly></td>
      <td width=2></td>
  </tr>
  </table>

     </td>
    </tr>
    </table>
    <table cellpadding=0 cellspacing=0 border=0 style='margin:10 0 0 0;'>
    <tr><td><span class='o'>단위 변환</span>: 변환할 값에 숫자를 입력하고, 현재단위 및 변환할 단위를 선택한 후 변환하기 버튼을 누르면 단위가 변환됩니다 </td></tr>
    </table>
    </td>
</tr>
</table>
</div>

<script type=text/javascript>
var unitTable = new Array();

// length
unitTable[0] = new Array(
 Array('',"- 단위를 선택하세요 -",""),
 Array('',"- 길이 --------------",""),
 Array(1000000, "밀리미터", "mm"),
 Array(100000, "센티미터", "cm"),
 Array(1000, "미터", "m"),
 Array(1, "킬로미터", "km"),
 Array(39370.0789, "인치", "inch"),
 Array(3280.84, "피트", "ft"),
 Array(1093.613, "야드", "yd"),
 Array(0.6213711922373339, "마일", "mile"),
 Array(3300, "자", "尺"),
 Array(550, "간", "間"),
 Array(9.17, "정", "町"),
 Array(2.546, "리", "里")
);

// weight
unitTable[1] = new Array(
 Array('',"- 단위를 선택하세요 -",""),
 Array('',"- 무게 질량 ---------",""),
 Array(1000000, "밀리그램", "mg"),
 Array(1000, "그램", "g"),
 Array(1, "킬로그램", "kg"),
 Array(0.001, "톤", "ton"),
 Array(15432, "그레인", "grain"),
 Array(35.273, "온스", "oz"),
 Array(2.20459, "파운드", "lb"),
 Array(266.666, "돈", null),
 Array(1.6666, "근", null),
 Array(0.26666, "관", null),
 Array(26.6666, "냥", null)
);

// area
unitTable[2] = new Array(
 Array('',"- 단위를 선택하세요 -",""),
 Array('',"- 넓이 --------------",""),
 Array(9917.4, "평방미터", "m²"),
 Array(99.174, "아르", "a"),
 Array(106749, "평방피트", "ft²"),
 Array(11861, "평방야드", "yd²"),
 Array(2.4506, "에이커", "acre"),
 Array(0.99174, "헥타아르", "ha"),
 Array(108000, "평방자", null),
 Array(3000, "평", null),
 Array(10, "단보", null),
 Array(1, "정보", null)
);


// volume
unitTable[3] = new Array(
 Array('',"- 단위를 선택하세요 -",""),
 Array('',"- 부피 --------------",""),
 Array(10, "데시리터", "㎗"),
 Array(1000, "밀리리터", "㎖"),
 Array(1, "리터", "ℓ"),
 Array(1000, "입방센치", "cm³"),
 Array(0.001, "입방미터", "m³"),
 Array(61.027, "입방인치", "in³"),
 Array(0.03531, "입방피트", "ft³"),
 Array(0.00130, "입방야드", "yd³"),
 Array(0.26418, "갤론", "gallon"),
 Array(1000, "씨씨", "cc"),
 Array(5.54352, "홉", null),
 Array(0.554352, "되", null),
 Array(0.0554352, "말", null),
 Array(0.00629326, "배럴", "bbl")
);


// pressure
unitTable[4] = new Array(
 Array('',"- 단위를 선택하세요 -",""),
 Array('',"- 압력 --------------",""),
 Array(1, "atm", null),
 Array(14.695949, "psi", null),
 Array(1.033227, "kgf/cm²", null),
 Array(101325, "Pa", null),
 Array(101.325, "kPa", null),
 Array(1.01325,"bar", null),
 Array(1013250, "dyne/cm²", null),
 Array(760, "mmHg", null),
 Array(29.921, "inHg", null),
 Array(10332.274528, "mmH₂O", null),
 Array(406.782462, "inchH₂O", null)
);


// temperature
unitTable[5] = new Array(
 Array('',"- 단위를 선택하세요 -",""),
 Array('',"- 온도 --------------",""),
 Array(null, "섭씨온도", "℃"),
 Array(null, "화씨온도", "℉"),
 Array(null, "절대온도", "K"),
 Array(null, "°R", null)
);


function unitCalc(type, from, to, value)
{
   
 var table = unitTable[type];

 if (!table)
  return -1;

 var i;
 var fromIndex = -1;
 var toIndex = -1;

 value = parseFloat(value);

 /* find "from" */
 for (i = 0; i < table.length; i++)
  if (table[i][1] == from || table[i][2] == from)
  {
   fromIndex = i;
   break
  }

 /* find "to" */
 for (i = 0; i < table.length; i++)
  if (table[i][1] == to || table[i][2] == to)
  {
   toIndex = i;
   break
  }

 if (fromIndex == -1 || toIndex == -1)
  return -1;

 if (type != "5")
 {
  result = parseFloat(table[toIndex][0])/parseFloat(table[fromIndex][0]) * value;
 }
 else
 {

  /* convert to absolute temperature */
  switch (fromIndex)
  {
  case 2:
   value = value + 273.15;
   break;
  case 3:
   value = 5/9 * (value - 32) + 273.15;
   break;
  case 4:
   break;
  case 5:
   value = 5/9 * (value - 459.7 - 32) + 273.15;
  }

  /* convert absolute temperature to */
  switch (toIndex)
  {
  case 2:
   value = value - 273.15;
   break;
  case 3:
   value = 9/5 * (value - 273.15) + 32;
   break;
  case 4:
   break;
  case 5:
   value = 9/5 * (value - 273.15) + 32 + 459.7;
  }

  result = value;
 }

 result = Math.round(result * 1000000) / 1000000;

  return result;
}


function unitCalcDisplay(from, to, value)
{
 var i;
 
 // From select
 var fromSelect = document.getElementById("sFrom");
 var toSelect = document.getElementById("sTo");


 if (from)
 {
  var valueText = document.getElementById("sValue");

  if (!valueText || !fromSelect || !toSelect)
   return;

  valueText.value = value;

  // From select box 항목 선택하기
  for (i = 0; i < fromSelect.options.length; i++)
   if (fromSelect.options[i].value == from)
    fromSelect.selectedIndex = i;
 
  // select box 에 알맞는 to select box 출력
  selectFromOptions();

  // To select box 항목 선택하기
  for (i = 0; i < toSelect.options.length; i++)
   if (toSelect.options[i].value == to)
    toSelect.selectedIndex = i;
 }
 else
 {
  value = document.getElementById("sValue").value;
  from = fromSelect.options[fromSelect.selectedIndex].value;
  to = toSelect.options[toSelect.selectedIndex].value;
 }

 if (!value || !from || !to) return;

    var type = 0; // 도량
   
    // 현재 단위 각 도량이 어디(etc : length...)에 속해있는지 판별
    for (var i=0; i < unitTable.length; i++)
        for (var j=0; j < unitTable[i].length; j++)
            if (from == unitTable[i][j][1]) {
                type = i;
                break;
            }

   if (from.substring(0,1) == "-") alert("현재단위를 선택해주세요");
 else {
  if (toSelect.selectedIndex == 0) alert("변환할 단위를 선택해주세요");
  else {
   var result = unitCalc(type, from, to, value);
   document.getElementById("sResult").value = result;
  }
 }
}

function unitCalculate(value, from, to)
{
 var fromExistFlag = false;
 var toExistFlag = false;
 var unit;
 var table;

 var i, j;

 for (j = 0; j < 6; j++)
 {
    
     var table = unitTable[j];

  fromExistFlag = toExistFlag = false;

  for (i = 0; i < table.length; i++)
  {
   if (from == table[i][1])
    fromExistFlag = true;

   if (to == table[i][1])
    toExistFlag = true;
  }

  if (fromExistFlag && toExistFlag)
  {
   unitCalcDisplay(from, to, value);
   return;
  }
 }
}

// From select box 에서 항목 선택시 To Select Box 항목출력
function selectFromOptions()
{
    var fromObject = document.getElementById("sFrom");
    var ffrom = fromObject.options[fromObject.selectedIndex].value;
   
    var toObject = document.getElementById("sTo");
    var type = 0; // 도량
 var cnt = 0;
   
    if(ffrom !="") {
   
        // 각 단위의 도량이 어디에 속해있는지 판별
        for (var i=0; i < unitTable.length; i++)
            for (var j=0; j < unitTable[i].length; j++)
                if (ffrom == unitTable[i][j][1]) {
                    type = i;
                    break;
                }
       
        // 항목에 알맞는 데이터 출력
        toObject.length = unitTable[type].length - 1;
        for(var i = 0; i < unitTable[type].length; i++) {
   if (i == 1) continue;
       
            var tempOption = unitTable[type][i][1] + (unitTable[type][i][2] ? " (" + unitTable[type][i][2] + ")" : "");
            toObject.options[cnt++] = new Option(tempOption, unitTable[type][i][1]);
               
        }
    }
 else {
  toObject.length = 1;
  toObject.options[0] = new Option("- 단위를 선택하세요 -", "");
 }
}


// from selectbox 에 list출력
function listFrom()
{

 var fromObject = document.getElementById("sFrom");
    var cnt = 1;
   
    for (var i=0; i<unitTable.length; i++) {
        for (var j=1; j<unitTable[i].length; j++) {
            var tempOption = unitTable[i][j][1] + (unitTable[i][j][2] ? " (" + unitTable[i][j][2] + ")" : "");
            fromObject.options[cnt++] = new Option(tempOption, unitTable[i][j][1]);
        }
   
    }   

}

listFrom();


if ( typeof(rege_0_1) != "undefined" && typeof(rege_0_2) != "undefined" && typeof(rege_0_3) != "undefined" ) {

 if (rege_0_1 && rege_0_2 && rege_0_3) {
  unitCalculate(rege_0_1, rege_0_2, rege_0_3);
 }

}
if ( typeof(rege_0_1) != "undefined" && typeof(rege_0_2) != "undefined" ) {

 if (rege_0_1 && rege_0_2)
 {
  if (rege_0_2 == "평")
   unitCalculate(rege_0_1, rege_0_2, "평방미터");
  else if (rege_0_2 == "돈")
   unitCalculate(rege_0_1, rege_0_2, "그램");
 }

}

</script>

좀더 흥미로운 내용이 많이 있습니다.. HOME > WEB/HTML/Css/Script를 확인하세요
TAG   
0 Trackback, 1 Comment, :
1  ... 123 124 125 126 127 128 129 130 131  ... 769 
Statistics Graph
Total : 464,952 Today : 148