반응형
브라우저에 미리 정의되어 내장된 객체들을 말한다.
  1. Frames 객체

    프레임객체는 배열로 되어있어서 length를 이용해서 모두 몇개의 프레임이 있는지 알아낼수 있고 인덱스를
    이용하여 각 프레임의 정보에도 접근할수 있다.
    frames[0],frames[1],.....
    프레임 객체는 윈도우 객체와 특성이나,메소드,이벤트 핸들러가 같기 때문에 윈도우 객체를 참고하면 된다.

  2. Document 객체

    브라우저 내장객체 중에 window객체 아래에 위치하며 html문서의 body택안에 있는 내용들과 연관이 있다.

    • document 객체의 특성

      특성 의미
      location 문서의 URL위치
      title 문서의제목
      layers 문서에 있는 레이어들의 배열
      embeds 문서에 있는 플러그인들의 배열
      applets 문서에 있는 자바 애플릿의 배열
      images 문서에 있는 이미지들의 배열
      cookie 클라이언트 pc에 저장한 정보
      links 문서에 있는 링크들의 배열
      forms 문서에 있는 입력양식의 배열.
      anchors 문서에 있는 표식들이 배열
      vlinkColor 이전에 방문했던 링크를 표시하는색
      alinkColor 링크를 클릭 했을때 나타나는 색
      linkColor 링크를 표시하는 색
      fgColor 문서의 전경색
      bgColor 문서의 배경색
      referer 링크로 현재문서에 왔을때 이전문서의 URL위치정보
      lastModified 문서를 마지막으로 수정한 날짜

    • Document 객체의 메소드

      메소드 의미
      open() 문서에 데이터를 출력 시키기 위한 준비
      close() 문서에 데이터를 출력 시키는 것을 마무리
      write() 문서에 데이터를 출력
      writeln() 문서에 데이터를 출력한후 줄을 바꾼다
      clear() 브라우저에서 문서지우기
      getSelection() 현재 선택된 문자열을 리턴

    • document 객체의 이벤트 핸들러

      이벤트핸들러 의미
      onFocus 문서가 포커스를 얻었을때
      onBlur 문서가 포커스를 잃었을때
      onClick 문서에서 마우스를 클릭했을때
      onDblClick 문서에서 마우스를 더블클릭 했을때
      onKeyPress 키보드에서 키를 눌렀을때
      onKeyUp 키보드에서 키를 눌렀다 놓았을때
      onKeyDown 문서에서 키를 입력했을 때
      onMouseDown 마우스 버튼을 눌렀을 때
      onMouseUp 마우스 버튼을 눌렀다 놓았을 때

    • cookie

      브라우저 사용중에 html 문서상에서 만들어낸 정보를 클라이언트쪽 컴퓨터에 저장해 놓는곳을 의미한다.
      서버로 정보를 보내는 cgi프로그램을 보조해 주는 기능으로 많이 쓰인다.
      서버로 부터 HTTP 헤더를 통해 전달받는 Set-Cookie와 클라이언트가 서버로보내는 Cookie 라는 구조로 나누어져 있다.

      Set-Cookie 설명
      name=value cookie 이름으로 반드시 지정 되어야 하고 이름에 세미콜론(;)쉼표(,)빈칸이 들어가면 안된다.
      expires=Date cookie가 종료되는 날짜를 지정한다.날짜 지정이 없으면 현재 브라우저 세션 동안에만 유효하게 된다.
      날짜형식:일-월-년 시-분-초
      path=PATH cookie가 사용될 URL주소의 디렉토리 부분의 경로를 설정한다.
      지정을 하지 않으면 cookie를 설정한 문서위치가 적용된다.
      domain = DOMAIN cookie가 사용될 URL주소의 도메인 부분의 경로를 지정한다.
      지정을 하지 않으면 cookie를 설정한 문서위치의 도메인이 적용된다.
      secure 데이터 전송에 보안이 요구되는지를 지정한다.
      필요하다면 secure라는 키워드를 사용하면 된다.
      Cookie 설명
      name=value1; name=value2 각 cookie 정보 사이에는 세미콜론(;) 기호를 사용하고 마지막 부분에는 기호를 붙이면 안된다.

      예제1 실행화면
      <a href="http://mirage728.com.ne.kr/index.html">홈</a>
      <a href="http://daum.net">다움</a>
      <script language="javascript">
      <!--
      document.write("링크수 : " + window.document.links.length + "<br>")
      for(i=0 ; i document.write(i + " : " + window.document.links[i] + "<br>")
      }
      //-->
      </script>

      다움

      링크수 : 2
      0 : http://mirage728.com.ne.kr/index.html
      1 : http://daum.net/

      예제2 실행화면
      <script>
      newday = new Date(document.lastModified)
      year=newday.getYear()
      month=newday.getMonth()+1
      day=newday.getDate()
      document.write("수정일 : " + year + "년" + month + "월" +day + "일")
      </script>
      수정일 : 2008년5월5일

    • open()

      window의 객체의 open() 메소드와는 다르며 지정된 윈도우에 데이터를 보낼 준비를 할때 사용한다.

      open("Mime형식")

      Mime(Multipurpose Internet Mail Extension)은 인터넷을 통해 다양한 형식의 문서나 이미지를 전송하기 위한 규약이다.
      생략하면 text/html이 기본값으로 사용된다.

    • close()

      open()메소드로 열려진 문서를 닫아주는 역활을 한다.

    • clear()

      브라우저에 나타난 문서를 지워주는 기능을 한다.

    • write()

      지정된 문서에 데이터를 출력하는 기능을 한다.

    • writeln()

      지정된 문서에 데이터를 출력하는 것은 write()메소드와 같지만 줄을 바꿔주는 기능도 함께있다.

      예제3 실행화면
      <script language="javascript">
      <!--
      var mirage1 = null
      function mir_open() {
      mirage1 = window.open("","","status=no,width=400,height=300")
      }
      function mir_close() {
      if(mirage1 != null)
      mirage1.close()
      }
      function mir_write() {
      if(mirage1 != null) {
      mirage1.document.open()
      mirage1.document.write("<title>안녕하세요</title>")
      mirage1.document.write("<center>")
      mirage1.document.writeln("<h3>방문을 환영 합니다</h3>")
      mirage1.document.writeln("즐거운 시간 보내세요")
      mirage1.document.write("</center>")
      mirage1.document.close()
      return mirage1.focus()
      }
      }
      function mir_clear() {
      if(mirage1 != null) {
      mirage1.document.open()
      mirage1.document.write("")
      mirage1.document.close()
      return mirage1.focus()
      }
      }
      //-->
      </script>
      <input type ="button" value="open" onclick="mir_open()">
      <input type ="button" value="close" onclick="mir_close()">
      <input type ="button" value="write" onclick="mir_write()">
      <input type ="button" value="clear" onclick="mir_clear()">
      <INPUT onclick="mir_open()" type="button" value="open">

      <INPUT onclick="mir_write()" type="button" value="write">

      <INPUT onclick="mir_clear()" type="button" value="clear">

      <INPUT onclick="mir_close()" type="button" value="close">

      [출처] [10]객체2|작성자 붉은매


반응형
브라우저에 미리 정의되어 내장된 객체들을 말한다.
  1. 계층구조

    계층구조 계층순위
    window ↑상위


    ↓하위

    frames document history locations classes tags
    layers title anchors links forms pathname protocol port hostname
    elements action method

    예외)navigator(브라우저 정보)

  2. Window 객체

    브라우저 내장객체 중에 최상위에 있는 객체로 window 하위에 있는 객체를 가리킬때 window객체를
    생략해도 된다.

    • window 객체의 특성

      특성 의미
      toolbar 윈도우의 툴바를 보여줄지의 여부
      status(bar) 윈도우의 상태선을 보여줄지의 여부 ()←생략
      scrollbars 윈도우의 스크롤바를 보여줄지의 여부
      menubar 윈도우의 메뉴를 보여줄지의 여부
      location(bar) 윈도우의 주소창을 보여줄지의 여부 ()←생략
      personalbar 윈도우의 Personalbar를 보여줄지의 여부
      status 상태선에 나타날 문자열
      defaultStatus 상태선에 지정된 문자열이 없을 때 나타날 문자열
      self 자기 자신 객체
      perent 윈도우 객체간에 게층구조가 생길때 상위객체
      top window 객체간에 계층구조가 생길때 최상위 객체
      frames 윈도우 객체안에 들어간 프레임들
      tags html문서에 사용된 모든 택들
      classes html문서에 사용된 모든 스타일시트 클래스들
      opener open() 메소드로 윈도우를 연 문서가 있는 윈도우
      innerWidth 윈도우에서 내용이 나타나는 영역의 너비
      innerHeight 윈도우에서 내용이 나타나는 영역의 높이
      outerWidth 윈도우 바깥테투리 너비
      outerHeight 윈도우 바깥테투리 높이
      pageXOffset 윈도우에서 현재 나타나는 페이지의 x 위치
      pageYOffset 윈도우에서 현재 나타나는 페이지의 Y 위치

    • window 객체의 메소드

      메소드 의미
      open() 윈도우 열기
      close() 윈도우 닫기
      confirm() 사용자로부터 확인을 받기위한 다이얼로그 박스
      prompt() 사용자로부터 문자열을 입력받기 위한 다이얼로그 박스
      alert() 메세지를 전달하기 위한 경고창
      back() 뒤페이지로 이동
      forward() 앞페이지로 이동
      home() 홈페이지로 이동
      find() 윈도우에 포함된 텍스트 검색
      setTimeout() 지정된 시간동안 기다린후 지정된 명령실행
      clearTimeout() setTimeout 해제
      setInterval() 주기적으로 명령실행
      stop() 문서전송 중지
      print() 윈도우에 포함된 내용출력
      moveBy() 윈도우 상대이동
      moveTo() 윈도우 절대이동
      resizeBy() 윈도우의 상대적 크기 바꾸기
      resizeTo() 윈도우의 절대적 크기 바꾸기
      scrollBy() 윈도우의 보여지는 부분을 상대적으로 스크롤
      scrollTo() 윈도우의 보여지는 부분을 절대적으로 스크롤

    • window 객체의 이벤트 핸들러

      이벤트핸들러 의미
      onFocus 브라우저가 포커스를 얻었을때
      onBlur 브라우저가 포커스를 잃었을때
      onError 브라우저가 문서를 읽다가 에러가 발생했을때
      onLoad 브라우저가 문서를 모두 읽은후에 실행할 명령지정
      onUnload 브라우저가 현재문서를 지운후에 실행할 명령지정
      onDragDrop 브라우저에서 객체를 드래그앤드롭 시켰을때
      onResize 윈도우 크기를 바꾸었을때
      onMove 윈도우를 움직였을때

      예제1 실행화면
      <a onclick="window.open('http://mirage728.com.ne.kr/index.html','_blank',
      'toolbar=no,location=yes,menubar=no,status=no,width=350,height=250')"
      onMouseOver="window.status='mirage728홈으로 이동합니다' ; return true" onMouseout="window.status=' ' ; return true">
      마우스 올린후 상태선을 보세요 </a>
      마우스 올린후 상태선을 보세요

    • open() 메소드

      open("문서이름","윈도우이름","윈도우특징")

      문서이름은 만들고자 하는 윈도우에 보여줄 html파일 이름을 지정하면 된다
      윈도우 이름은 만들고자 하는 윈도우의 이름으로 target 지정할때 쓰이게 된다.
      (_top,_self,_parent,_blank,프레임이름,윈도우이름,"")

      윈도우 특징의 종류

      윈도우특징 입력값 설명
      status boolean 상태선
      width 픽셀수 윈도우 바깥너비
      height 픽셀수 윈도우 바깥 높이
      toolbar Boolean 툴바메뉴
      location Boolean 문서위치 정보
      directories Boolean 디렉토리메뉴
      menubar Bollean 메뉴
      scrollbars Boolean 스크롤바
      resizable Boolean 윈도우 크기조절 가능
      copyhistory Boolean 히스토리 정보 복사

      예제2 실행화면
      <script>
      function win1() {
      window.open("","","")
      }
      </script>
      <a href="javascript:onclick=win1()">윈도우열기</a>
      윈도우열기

      예제3 실행화면
      <script>
      function win2() {
      window.open("","","status=no,width=200,height=100")
      }
      </script>
      <a href="javascript:onclick=win2()">윈도우열기</a>
      윈도우열기

      예제4 실행화면
      <script>
      function win3() {
      window.open("aaa.html","win3","status=no,width=200,height=100,directories=yes")
      }
      </script>
      <a href="javascript:onclick=win3()">윈도우열기</a>
      윈도우열기

      예제5 실행화면
      <script>
      function win4() {
      make1 = window.open("aaa.html","win3","status=no,width=200,height=100")
      make1.document.write("mirage728홈 입니다<p>")
      make1.document.write("<input type='button' value='닫기' ")
      make1.document.write("+ onclick='window.close()' >")
      }
      </script>
      <a href="javascript:onclick=win4()">윈도우열기</a>
      윈도우열기

      예제6 실행화면
      <script>
      var make1 = null // make1 변수에는 아직 값이 없다
      function win5() {
      make1 = window.open("aaa.html","win3","status=no,width=200,height=100")
      // 텅빈 make1 변수에 새로 만들어진 윈도우를 집어 넣는다
      // make1은 이제 새로 만들어진 윈도우 자체이다
      make1.document.write("mirage728홈 입니다<p>")
      // make1에 글을 출력한다
      }
      function close5() {
      if(make1 != null) // 윈도우가 만들어져 있다면 = make1에 값이 들어 있다면
      make1.close() // 윈도우(make1)를 닫아라
      }
      </script>
      <a href="javascript:onclick=win5()">윈도우 열기</a><p>
      <!-- 링크를 클릭하면 win5()함수를 호출(실행)하라 -->
      <a href="javascript:onclick=close5()">윈도우 닫기</a><p>
      <!-- 링크를 클릭하면 close5()함수를 호출(실행)하라 -->
      <a style="cursor:hand;" onmouseOver=win5() onmouseOut=close5() >마우스위로</a>

      윈도우 열기

      윈도우 닫기

      마우스위로


    • setTimeout() 메소드

      지정된 시간동안 기다린후 지정된 명령실행

      setTimeout(함수-명령,시간)

      함수-명령은 지정된 시간이 지난후 실행할 함수또는 명령어이다.
      시간은 기다리는 시간이다.단위:1/1000초

      예제7 실행화면
      <script>
      function wtime() {
      var today = new Date()
      var mirage = "현재시각 : " + today.getHours()
      mirage += "시 " + today.getMinutes() + "분 "
      mirage += today.getSeconds() + "초"
      window.status = mirage;
      timecall = setTimeout("wtime()",1000) }

      function stime() {
      clearTimeout(timecall)
      }
      </script>

      <input type=button value="시계실행" onclick="wtime()">
      <input type=button value="시계멈춤" onclick="stime()">
      상태선을 보세요<br>

      <INPUT onfocus="this.blur()" onclick="wtime()" type="button" value="시계실행"> <INPUT onfocus="this.blur()" onclick="stime()" type="button" value="시계멈춤">

      상태선을 보세요

    • clearTimeout() 메소드

      setTimeout() 메소드로 지정한 것을 해제하는 역활을 한다.

      clearTimeout(setTimeout-ID)

      setTimeout-ID는 setTimeout() 실행시 리턴된 값이다(식별자)
      위 예제에서 setTimeout() 메소드로 지정한 실행명령을 clearTimeout() 메소드로 해제시킨 경우이다.

      예제8 실행화면
      <script>
      function load1() {
      location = 'http://mirage728.com.ne.kr/index.html'
      }
      </script>
      <body onLoad="setTimeout('load1()',4000)">
      <center><b>잠시후에 이동합니다.</b></center>
      setTimeout 예제2

    • setInterval() 메소드

      일정한 간격을 두고 명령을 주기적으로 실행 시킬때 사용된다.
      setTimeout은 지정된 명령를 일정한 시간이 지난후에 한번만 실행 시키기 때문에
      시간을 계속 보여주는 경우에는 setInterval() 메소드를 사용하는 것이 효과적이다.

      예제9 실행화면
      <script>
      function rtime() {
      var today = new Date()
      var mirage = "현재시각 : " + today.getHours()
      mirage += "시 " + today.getMinutes() + "분 "
      mirage += today.getSeconds() + "초"
      window.status = mirage;
      }
      function r1time() {
      setInterval("rtime()",1000)
      }
      </script>
      <input type=button value="시계실행" onclick="r1time()">
      <INPUT onfocus="this.blur()" onclick="r1time()" type="button" value="시계실행">

    • find() 메소드

      윈도우에 포함되어 있는 텍스트 중에서 원하는 문자열을 찾고자 할때 사용한다.

      find("검색할문자열",대소문자구분(Boolean),뒤로-앞으로(Boolean))

      검색할 문자열을 지정하지 않으면 찾기 다이얼로그 박스가 나타난다.
      대소문자 : true=대소문자구분,false=구분하지않음(디폴트값)
      뒤로-앞으로: true=뒤로검색 ,false=앞으로검색(디폴트)
      리턴값: true:찾았을때,false:찾지못했을때

    • print() 메소드

      현재 보여지는 내용을 프린트로 출력하는 기능이다.

      예제10 실행화면
      <input type=button value='프린트하기' onClick="window.print()"> <INPUT onfocus="this.blur()" onclick="window.print()" type="button" value="프린트하기">

    • moveBy() 메소드

      윈도우를 상대적인 위치로 이동시킨다.

      moveBy(수평거리,수직거리)

    • moveTo() 메소드

      윈도우를 절대적인 위치로 이동시킨다.

      moveBy(x좌표,y좌표)

      예제11 실행화면
      <script>
      function move1() {
      mirage3 = window.open("","ret","width=300,height=200");
      mirage3.moveTo(50,20);
      return mirage3.focus();
      }
      function move2() {
      mirage3 = window.open("","ret","width=300,height=200");
      mirage3.moveBy(50,20);
      return mirage3.focus();
      }
      </script>
      <input type=button value="moveTo" onclick="move1()">
      <input type=button value="moveBy" onclick="move2()">
      <INPUT onclick="move1()" type="button" value="moveTo"> <INPUT onclick="move2()" type="button" value="moveBy">

      여러번 클릭 해보면 moveBy는
      상대적인 위치 이동을 한다

    • resizeBy() 메소드

      윈도우의 크기를 상대적인 길이만큼 바꾼다.

      resizeBy(가로길이,세로길이)

    • resizeTo() 메소드

      윈도우의 크기를 절대적인 길이만큼 바꾼다.

      resizeTo(가로길이,세로길이)

      예제12 실행화면
      <script>
      function inone() {
      window.resizeBy(10,10);
      }
      function outone() {
      window.resizeBy(-10,-10);
      }
      function inone1() {
      window.resizeBy(10,10);
      }
      function outone1() {
      window.resizeBy(-10,-10);
      }
      </script>
      <input type="button" value="윈도우확대(by)" onclick="inone()">
      <input type="button" value="윈도우축소(by)" onclick="outone()">
      <input type="button" value="윈도우확대(to)" onclick="inone1()">
      <input type="button" value="윈도우축소(to)" onclick="outone1()">
      <INPUT onclick="inone()" type="button" value="윈도우확대(by)"> <INPUT onclick="outone()" type="button" value="윈도우축소(by)">

      <INPUT onclick="inone1()" type="button" value="윈도우확대(to)"> <INPUT onclick="outone1()" type="button" value="윈도우축소(to)">

    • scrollBy() 메소드

      상대적인 크기만큼 윈도우를 스크롤시킨다.

      scrollBy(수평길이,수직길이)

    • scrollTo() 메소드

      절대적인 크기만큼 윈도우를 스크롤시킨다.

      scrollBy(x,y)

      x:가로 좌표값이 x가 되도록 스크롤
      y:세로 좌표값이 y가 되도록 스크롤

      예제13 실행화면
      <input type=button value="scrollBy" onclick='window.scrollBy(0,-400)'>
      <input type=button value="scrollTo" onclick='window.scrollTo(0,300)'>
      <INPUT onclick="window.scrollBy(0,-400)" type="button" value="scrollBy">
      <INPUT onclick="window.scrollTo(0,300)" type="button" value="scrollTo">


반응형
자바스크립트에 미리 정의되어 내장된 객체들을 말한다.
  1. 이벤트와 이벤트 핸들러

    이벤트란 특정한 동작이 발생했다는 신호를 가리키고 이벤트 핸들러란 이벤트가 발생할 때마다 처리하는 함수 혹은 메소드이다

    • 이벤트 종류

      이벤트 의미
      focus 입력양식 필드로 포커스가 들어왔을때
      blur 입력양식 필드에서 포커스가 다른 곳으로 이동했을때
      change 입력양식 필드에 있는 값을 바꾸었을때
      click 입력양식이나 링크를 마우스로 클릭했을때
      dblclick 마우스를 더블클릭 했을때
      mousedown 마우스버튼을 눌렀을때
      mouseup 마우스버튼을 눌렀다 놓았을 때
      mousemove 마우스를 움직였을 때
      mouseout 마우스가 링크나 특정 영역 안에 있다가 나갔을때
      mouseover 링크 위로 마우스가 지나갔을때
      dragdrop 마우스를 클릭한 상태에서 움직였을때
      keydown 키를 입력했을때
      keypress 키를 눌렀을 때
      keyup 키를 눌렀다 놓았을 때
      load 문서가 읽혀졌을 때
      unload 문서가 없어질 때
      abort 이미지를 읽다가 중단시켰을 때
      error 문서나 이미지를 읽다가 에러가 발생했을 때
      select 입력양식의 한필드를 선택했을 때
      submit 입력양식을 서버로 보낼 때
      reset 입력 양식에서 리셋 시켰을 때
      resize 윈도우나 프레임의 크기를 바꾸었을때
      move 윈도우나 프레임을 움직였을 때

    • 이벤트 핸들러 지정

      이벤트핸들러는 html속성으로 지정할수 있다.
      사용하는 방법은 각 이벤트 앞에 on을 붙여 주기만 하면 된다.
      예)onclick,onload,onmousedown...등

      예제1 실행화면
      <script language="javascript">
      <!--
      function mouse1() {
      alert("마우스가 링크로 올라왔습니다")
      }
      //-->
      </script>
      <a onmouseover=mouse1() >마우스를 올려보세요</a>
      마우스를 올려보세요

  2. Event 객체

    • Event 객체의 특성

      특성 의미
      type 이벤트종류
      which 마우스버튼의 종류,입력키의 아스키값
      modifiers 마우스와 키 이벤트 발생시 함께눌러진 Modifier키 (alt,shift,ctrl,*,?..)
      data dragdrop 이벤트로 선택된 객체의 URL주소
      target 이벤트가 전달될 객체
      layerX 이벤트가 발생한 위치의 X 좌표(레이어기준)
      layerY 이벤트가 발생한 위치의 Y 좌표(레이어기준)
      pageX 이벤트가 발생한 위치의 X 좌표(페이지 기준)
      pageY 이벤트가 발생한 위치의 Y 좌표(페이지 기준)
      screenX 이벤트가 발생한 위치의 X 좌표(화면 기준)
      screenY 이벤트가 발생한 위치의 Y 좌표(화면 기준)

  3. 이벤트 잡아내기

    이벤트가 대상 객체에 전달 되기전에 먼저 이벤트를 잡아내어 처리할수가 있다.

    • Event를 잡아내기 위한 메소드

      메소드 의미
      captureEvents 웹 페이지에서 잡아낼 이벤트 지정
      releaseEvents captureEvents로 지정된 이벤트를 해제
      routeEvent 잡아낸 이벤트를 처리할 이벤트 핸들러가 있는 경우 전달한다
      handleEvent 이벤트를 특정 객체의 이벤트 핸들러로 전달

[출처] [8]객체4|작성자 붉은매


+ Recent posts