본문 바로가기

프로그래밍/JavaScript

자바스크립트 이것 저것


HTML, CSS, JAVASCRIPT공부에 좋은 사이트 http://www.gotapi.com

 

외부의 jsTest.js파일 불러오기

<script language="javascript" src="jsTest.js"></script>

 

typeof - 변수타입 알아내기

<script language="javascript">
 <!--
 var num1=111;
 var num2=222;
 document.write("변수 num1의 값은 : "+num1+"<br />변수 num2의 값은 : "+num2+"<br />num1+num2="+(num1+num2));
 var sNum1="111";
 var sNum2="222";
 document.write("<br />sNum1+sNum2="+(sNum1+sNum2));
 document.write("<br />"+parseInt(sNum2));
 document.write("<br />"+typeof num1);
 document.write("<br />"+typeof sNum1);
 document.write("<br />"+eval(sNum2));
 //eval() 수식어 있는 문자열을 실수로 변화
 -->
</script>

 

confirm - 확인받기

prompt  - 입력받아 처리하기

<script language="javascript">
 <!--
/*  alert("야야야"); */
  if( confirm("확인 또는 취소를 선택하삼") ){
   alert("확인 눌렀군..");
  }else{
   alert("취소 눌렀군..");
  }
  var aPrompt = prompt("누군겨?","썅! ");
  alert("너는 "+aPrompt+"이군!");
 -->
</script>

 

Array() - 배열선언

여기서는 열두달에 마지막날짜가 몇일인지 알아내는 기능

<script language="javascript">
 <!--
  var month = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
  
  do{
   var inputNum = prompt("1 ~ 12 사이 숫자 입력",1);
   if(inputNum > 12 || inputNum < 1){
    inputNum="";
    alert("썅 너무 크거나 작잖아 다시 써라..");
   }
  } while( !inputNum )

  document.write(inputNum+"월은 "+month[inputNum-1]+"까지 입니다.");
 -->
 </script>

 

Date() - 날짜 시간

<script language="javascript">
 <!--
  var today = new Date();
  document.write("<pre><b style='font-size:20px; color:pink; font-family:HY해드라인'>");
  document.writeln("풀날짜 객체   : "+today);
  document.writeln("문자열로 변경 : "+today.toString());
  document.writeln("년도 getFullYear : "+today.getFullYear());
  document.writeln("today.toLocaleString : "+today.toLocaleString());
  document.writeln("today.toGMTString : "+today.toGMTString());

  document.writeln(today.getYear()+"년");
  document.writeln(today.getMonth()+"월");
  document.writeln(today.getDate()+"일");
  document.writeln(today.getDay()+"요일");
  document.writeln(today.getHours()+"시");
  document.writeln(today.getMinutes()+"분");
  document.writeln(today.getSeconds()+"초");
  document.writeln("타입스템프 : "+today.getTime());
  document.write("</b></pre>");
 -->
 </script>

 

moveBy() - 윈도우 이동

resizeTo() - 크기 조정

<script language="javascript">
 <!--
  // 윈도우 객체
  function winMove(x,y){
   window.moveBy(x,y);
  }
 -->
 </script>

<BODY onLoad="window.resizeTo(500,300)">
 <input type="button" value="상 (위로)" onClick="window.moveBy(0,-50)" />
 <input type="button" value="하 (아래로)" onClick="window.moveBy(0,50)" />
 <input type="button" value="좌 (왼쪽으로)" onClick="window.moveBy(-50,0)" />
 <input type="button" value="우 (오른쪽으로)" onClick="window.moveBy(50,0)" />
 <hr style="color:orange;"/>
 <input type="button" value="상 (위로)" onClick="winMove(0,-50)" />
 <input type="button" value="하 (아래로)" onClick="winMove(0,50)" />
 <input type="button" value="좌 (왼쪽으로)" onClick="winMove(-50,0)" />
 <input type="button" value="우 (오른쪽으로)" onClick="winMove(50,0)" />
 </BODY>

 

open() - 팝업창열기

close() - 창 닫기

이 기능은 버튼 누르면 창이 열리고 또 누르면 창이 닫히는 기능

<script language="javascript">
  <!--
   var obj = null;
   var html = null;
   function newWindowOpen(){
    obj = window.open("./script10_1.html","goldmeme","width=540 height=534 toolbar=no status=no menubar=no directions=no location=no scrollbars=no resizable=no");
   }
   function newWindowClose(){
    obj.close();
   }

   function autoWindowOC(){
    if( obj == null ) {
     // 사용방법 1
//     obj = window.open("./script10_1.html","goldmeme","width=540 height=534 toolbar=no status=no menubar=no directions=no location=no scrollbars=no resizable=no");

     // 사용방법 2
     obj = window.open("","goldmeme","width=540 height=534 toolbar=no status=no menubar=no directions=no location=no scrollbars=no resizable=no");

     html = "<html>";
     html += "<head><title>GOLD ME ME JJANG</title></head>";
     html += "<body topmargin='0' leftmargin='0'>";
     html += "<img src='../img/nana.jpg' />";
     html += "</body>";
     html += "</html>";
     obj.document.write(html);

    } else {
     obj.close();
     obj = null;
    }
   }
  -->
 </script>
 <BODY>
 <img src="../img/nana.jpg" width="200" alt="금나나 짱!" />
 <br />
 <input type="button" value="열려라" onClick="autoWindowOC()" />
 <input type="button" value="참깨" onClick="autoWindowOC()" />
 </BODY>

 

history.back() - 뒤로

history.forward() - 다음으로

history.go() - 이동

window.location.replace() - 페이지를 불러옴

window.location.reload() - 새로고침

<input type="button" value="뒤로" onClick="history.back()" />
 <input type="button" value="다음으로" onClick="history.forward()" />
 <input type="button" value="두단계 전으로" onClick="history.go(-2)" />
 <input type="button" value="두단계 앞으로" onClick="history.go(2)" />
 <input type="button" value="www.naver.com" onClick="window.location.replace('http://www.naver.com')" />
 <input type="button" value="새로고침" onClick="window.location.reload()" />

 

 

.link() - 같은페이지에서 빠른이동에 자주쓰인다.

.anchor() - 이동할 위치

<a href="#1"></a> 이와 똑같다.

<script language="javascript">
  <!--
   var i=0;
   document.write("www.imbc.com".link("http://www.imbc.com"));
   document.write("<pre>");
   document.writeln("꽃보다 남자 멤버는?");
   document.writeln("멤버1".link("#1"));
   document.writeln("멤버2".link("#2"));
   document.writeln("멤버3".link("#3"));
   document.writeln("멤버4".link("#4"));
   document.writeln("여주인공".link("#5"));
   document.writeln("<hr color='orange'/>");
   for( ; i < 100; i++ )
   document.writeln("<br />");
   document.writeln("멤버1 : 이순신".anchor("1"));
   for( i=0 ; i < 100; i++ )
   document.writeln("<br />");
   document.writeln("멤버2 : 홍길동".anchor("2"));
   for( i=0 ; i < 100; i++ )
   document.writeln("<br />");
   document.writeln("멤버3 : 일지매".anchor("3"));
   for( i=0 ; i < 100; i++ )
   document.writeln("<br />");
   document.writeln("멤버4 : 털보".anchor("4"));
   for( i=0 ; i < 100; i++ )
   document.writeln("<br />");
   document.writeln("여주인공 : 덕후".anchor("5"));
   for( i=0 ; i < 100; i++ )
   document.writeln("<br />");
   document.write("</pre>");
  -->
 </script>

 

 

.length - 문자열 길이

toLowerCase() - 소문자로

toUpperCase() - 대문자로

substring() - 문자열 속에 문자열

slice() - 문자열 속에 문자열 사용법이다름

<script language="javascript">
  <!--
   // String Object
   document.write("<pre>");
   var engStr = "oh Happy Day";
   var korStr = "우리반 만만세~";
   document.writeln(engStr +" 문자열길이 : "+ engStr.length);
   document.writeln(korStr +" 문자열길이 : "+ korStr.length)
   document.writeln("toLowerCase() : "+engStr.toLowerCase());
   document.writeln("toUpperCase() : "+engStr.toUpperCase());
   document.writeln("substring(3) : "+engStr.substring(3));
   document.writeln("substring(3,8) : "+engStr.substring(3,8));
   document.writeln("substring(4) : "+korStr.substring(4));
   document.writeln("substring(5,7) : "+korStr.substring(5,7));
   document.writeln("slice(3) : "+engStr.slice(3));
   document.writeln("slice(3,8) : "+engStr.slice(3,8));
   document.writeln("slice(3,-1) : "+engStr.slice(3,-1));
   document.writeln("slice(3,-2) : "+engStr.slice(3,-2));
   document.write("</pre>");
  -->
 </script>

 

 

값을 옴기는 기능

<form name="frm" method="get" action="">
  <input type="text" name="t1" />
  <input type="button" name="b1" value="▶▷"
  onMousedown="javascript: this.value='▷▶';"
  onMouseup="javascript: this.value='▶▷';"
  onClick="javascript: t2.value += t1.value;" />
  <input type="text" name="t2" size="100" />
 </form>

 

 

체크박스,라디오 값 다루기

<script language="javascript">
  <!--
   function chkBloodType(form){
    for(var i=0 ; i<form.bloodType.length ; i++)
     if(form.bloodType[i].checked) alert(form.bloodType[i].value);
   }
   function chkAnimal(form){
    var str = "";
    var count = 1;
    for(var i=0 ; i<form.animal.length ; i++)
     if(form.animal[i].checked) {
      str += "체크" + count + " " + form.animal[i].value + "\n";
      count++;
     }
     alert(str);
   }

   function choiceBlood(form){
    form.bloodType[2].checked = true;
   }
   function choiceAnimal(form){
    form.animal[1].checked = true;
    form.animal[2].checked = true;
   }
  -->
 </script>
 <BODY>
 <form method="" action="" name="form1">
  <input type="radio" name="bloodType" value="A" checked />A형
  <input type="radio" name="bloodType" value="B" />B형
  <input type="radio" name="bloodType" value="O" />O형
  <input type="radio" name="bloodType" value="AB" />AB형
  <input type="button" name="but1" value="선택" onClick="chkBloodType(this.form)" />
  <hr />
  <input type="checkbox" name="animal" value="tiger" />호랭이
  <input type="checkbox" name="animal" value="dog" />멍멍이
  <input type="checkbox" name="animal" value="cat" />야옹이
  <input type="checkbox" name="animal" value="mikimouse" />미키마우스
  <input type="button" name="but2" value="동물선택" onClick="chkAnimal(this.form)" />
  <hr />
  <input type="button" name="but3" value="피 자동선택" onClick="choiceBlood(this.form)" />
  <input type="button" name="but3" value="동물 자동선택" onClick="choiceAnimal(this.form)" />
 </form>
 </BODY>

 

 

선택하면 자동으로 버튼이 나오거나 색이 바뀌는 기능

<script language="javascript">
  <!--
   function goToTheUrl(channel){
    switch( channel ){
     case "mbc" : location.replace("http://www.imbc.com"); break;
     case "kbs" : location.replace("http://www.kbs.co.kr"); break;
     case "sbs" : location.replace("http://www.sbs.co.kr"); break;
     default : break;
    }
   }

   function showButton(channel){
    //alert(document.frm1.channel.options[1].text);
    switch( channel ){
     case "mbc" : document.frm1.but1.value="M본부로 이동하기"; document.frm1.but1.style.visibility = "visible"; break;
     case "kbs" : document.frm1.but1.value="K본부로 이동하기"; document.frm1.but1.style.visibility = "visible"; break;
     case "sbs" : document.frm1.but1.value="S본부로 이동하기"; document.frm1.but1.style.visibility = "visible"; break;
     default : document.frm1.but1.style.visibility = "hidden"; break;
    }
   }

   function chaColor(color){
    document.fgColor=color;
   }

   function showLast(){
    var today = new Date(document.lastModified);
    alert(today.getYear()+"년"+today.getMonth()+1 +"월"+today.getDate()+"일 "
    +today.getHours()+"시"+today.getMinutes()+"분"+today.getSeconds()+"초");
   }
  -->
 </script>
 </HEAD>
 <BODY>
 <form name="frm1" method="get" action="#">
  <select name="channel" onChange="showButton(this.value)" >
   <option value="" />방송사를 선택하세요!
   <option value="mbc" />MBC
   <option value="kbs" />KBS
   <option value="sbs" />SBS
  </select>
  <input name="but1" type="button" value="" onClick="goToTheUrl(this.form.channel.value)" style="visibility:hidden" />
  </br />
  <select name="color" onChange="chaColor(this.value)">
   <option value="" />색을 선택하세요!
   <option value="red" />RED
   <option value="blue" />BLUE
   <option value="green" />GREEN
  </select>
  <b>포뇨 포뇨 포뇨 물고기인간.</b>
  <br />
  <input type="button" name="but2" value="lastModified속성" onClick="showLast()" />
 </form>
 </BODY>

 

이미지의 값 다루기

<script language="javascript">
  <!--
   function showDOM(){
    document.write("1) 이미지 갯수 : "+document.images.length+"<br />");
    document.write("2) 이미지 경로 : "+document.images[0].src+"<br />");
    document.write("3) 이미지 이름 : "+document.images[0].name+"<br />");
    document.write("4) 이미지 가로길이 : "+document.images[0].width+"<br />");
    document.write("5) 이미지 세로길이 : "+document.images[0].height+"<br />");
    document.write("6) 이미지 좌우정렬 : "+document.img1.align+"<br />");
    document.write("7) 이미지 좌우여백 : "+document.img1.vspace+"<br />");
    document.write("8) 이미지 상하여백 : "+document.img1.hspace+"<br />");
    document.write("9) 이미지 말풍선 : "+document.img1.alt+"<br />");
    document.write("10) 이미지 테두리 : "+document.img1.border+"<br />");
   }

   function changeImg(){
    if( document.img1.src.indexOf("nana") > 0 ) {
     document.img1.src="../img/lees.bmp";
     document.img1.alt="야가 이연희";
    }else{
     document.img1.src="../img/nana.jpg";
     document.img1.alt="야아가 금나나";
    }
   }
  -->
 </script>
 </HEAD>
 <BODY>
 <img src="../img/lees.bmp" name="img1" border="1" width="300" hspace="100" alt="야가 이연희" align="left" onMouseout="changeImg()" />
 <Script language="javascript">
  <!--
   showDOM();
  -->
 </script>
 </BODY>

 

 

선택하면 배경색변경과

setInterval() - 설정한 대로 반복시킴 여기서는 1초

<style>
  <!--
   td { width:300px; height:50; }
  -->
 </style>
 <script language="javascript">
  <!--
   var arr1 = new Array();

   arr1[0] = 10; arr1[1] = 20; arr1[2] = 30;
   document.write(arr1.length);

   var arr2 = new Array("어제도","오늘도","내일도","xml");

   for(var i=0; i<arr2.length;i++)
   document.write(arr2[i]+" ");

   document.write(arr2.join());
   document.write(arr2.join("|"));

   function notice(){
    alert("hi!!");
   }
   function clock(){
    var t = new Date();
    document.getElementById("time").value=t;
   }
  -->
 </script>
 </HEAD>
 <body onLoad="window.setInterval('clock()',1000);">
 <table cellspacing="3">
  <tr>
   <td bgcolor="red" onMouseOver="document.bgColor='red';"></td>
   <td bgcolor="tan" onMouseOver="document.bgColor='tan';"></td>
   <td bgcolor="yellow" onMouseOver="document.bgColor='yellow';"></td>
   <td bgcolor="green" onMouseOver="document.bgColor='green';"></td>
   <td bgcolor="blue" onMouseOver="document.bgColor='blue';"></td>
   <td bgcolor="black" onMouseOver="document.bgColor='black';"></td>
  </tr>
 </table>
 <hr />
 <input type="text" id="time" size="35" />
 </BODY>