본문 바로가기

컴퓨터/언어,프로그래밍

자바스크립트 window객체, loaction객체, history객체, navigator객체

@window객체

1. 주요 프로퍼티 :

classes ==> 문서안에 삽입된 class 정보
frames ==> 창에 사용된 frame 정보
length ==> 부모창의 frame 개수
closed ==> 브라우저 창이 닫혔는지 체크

defaultStatus ==> 상태표시줄 기본값
status ==> 상태표시줄

document ==> 현재창의 document 객체
history ==> 현재 창의 history 객체
location ==> 현재 창의 location 객체
opener ==> 새 창을 열어준 부모창
parent ==> 부모창
self ==> 현재창
top ==> 최상위 창
name ==> 창의 이름

innerHeight ==> 넷스케이프 전용, 브라우저 안쪽 높이
innerWidth ==> 넷스케이프 전용, 브라우저 안쪽 너비
outerHeight ==> 넷스케이프 전용, 브라우저 전체 높이
outerWidth ==> 넷스케이프 전용, 브라우저 전체 너비
pageXOffset ==> 넷스케이프 전용, 화면 왼쪽 상단에서 떨어진 가로(X) 길이
pageYOffset ==> 넷스케이프 전용, 화면 왼쪽 상단에서 떨어진 세로(Y) 길이


2. 주요 메서드

open() ==> window.open("파일이름", "창이름", "창의 속성")   [창열기]
 -- 파일 이름 : 열린 창에 뿌려질 내용을 담은 파일(*.jsp, *.html, *.php...)
 -- 창 이름 : 열린 창을 제어하기위한 이름 부여
 -- 창의 속성

         - height = 픽셀 값  : 팝업창의 높이
         - width = 픽셀 값  : 팝업창의 너비
         - top = 픽셀 값  : 상단 좌표
         - left = 픽셀 값  : 왼쪽 좌표

         - directories = yes | no  : 연결 표시줄
         - location = yes | no  : 주소 표시줄
         - menubar = yes | no  : 메뉴바
         - resizable = yes | no  : 화면 크기 조절
         - scrollbars = yes | no  : 스크롤바
         - status = yes | no  : 상태 표시줄
         - toolbar = yes | no  : 도구 모음

         - channelmode = yes | no  : 채널 스크린(최대화, 최소화, 닫기 아이콘존재)
         - fullscreen = yes | no  : 풀 스크린(최대화, 최소화, 닫기 아이콘 없음, 닫기 버튼 따로 만들어야..)

**팝업창을 맨위로 오게 하기
팝업 페이지에 설정
<BODY onload = "self.focus()"> 또는 <BODY onload="window.focus()">

**팝업창을 화면 중앙에서 열기
초기 좌표값 설정
X축 : X = (screen.width - 팝업width) /2
Y축 : Y = (screen.width - 팝업height) /2

close() ==> window.close()  [창닫기]

moveBy() ==> window.moveBy(가로 이동거리, 세로 이동거리) [브라우저 창의 왼쪽 상단 기준으로 창이동]
moveTo() ==> window.moveTo(가로 이동거리, 세로 이동거리) [모니터 화면의 왼쪽 상단 기준으로 창이동]
==> 왼쪽이나 위로 가면 음수( - ) 오른쪽이나 아래로 가면 양수( + )

resizeBy() ==> window.resizeBy(창의 너비, 창의 높이) [현재 브라우저 창크기 기준으로 창크기조절]
resizeTo() ==> window.resizeTo(창의 너비, 창의 높이) [브라우저 창의 절대 기준으로 창크기조절]

setTimeout() ==> timeID = setTimeout("수행될 함수",시간) [timeID생략가능, 시간은 밀리세컨드 단위]
clearTimeout() ==> clearTimeout(timeID)

**5초마다 경고창 보여주기
function displayAlert(){
     alert("경고");
     timerID = setTimeout("displayAlert()",5000)
}

@location 객체
**주로 URL정보에 관련된 정보를 사용

hash ==> 책갈피 이름
host ==> 호스트URL, 이름, 포트번호
hostname ==> 호스트URL, 이름
href ==> URL
pathname ==> 링크의 경로
port ==> 포트번호
protocol ==> 프로토콜
search ==> 검색 엔진 호출

reload() ==> 새로 고침
replace() ==> 다른 URL문서로 고침

**뒤로가기 버튼 사용 막기
function fixed(url){
    loaction.href = url
}
...
<body onload="fixed('1.html')" onUnload="fixed('1.html')">


@history 객체

length ==> 방문했던 URL주소 개수(익스플로러 0부터 카운트, 넷스케이프 1부터 카운트)

back() ==> 히스토리에서 한단계 뒤로 이동 (뒤로가기 버튼)
forward() ==> 히스토리에서 한단게 앞으로 이동(앞으로 버튼)
go(이동할 인덱스길이) ==> 지정한 길이만큼 앞뒤로 이동(-3 : 3페이지 뒤로 , 3 : 3페이지 앞으로)


@navigator 객체
**브라우저의 정보, 수정불가, 읽기전용 ==> 브라우저 정보를 체크해보고 해당 페이지로 연결하기위해 필요

appCodeName ==> 브라우저 코드 이름 [Mozilla]
appName ==> 브라우저 종류 [Microsoft Internet Explorer]
appVersion ==> 브라우저 버전 [4.0 (Compatible; MSIE 6.0; Windows NT 5.1)]
Platform ==> 브라우저 플랫폼 [Win32]
userAgetn ==> 브라우저 에이전트,모든 정보 [Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)]

javaEnabled() ==> 자바 지원 여부 (true: 지원 , false: 지원안함)
taintEnabled() ==> 브라우저 손상 여부(true: 고장 , false: 고장안남)

출처 : http://lovemingming.tistory.com/entry/자바스크립트-window객체
제주삼다수, 2L,... 오뚜기 진라면 매운... 상하목장 유기농 흰... 남양 프렌치카페 카... 고려인삼유통 홍삼 ... 종근당건강 오메가3... 요이치 카링 유무선...