브라우저에 열려있는 윈도우를 참조한다.

window 개체는 사용자 체계의 최상위 개체인 윈도우를 호출하여 접속하고, 윈도우의 속성들를 설정할 수 있게 한다.

Script [propVal=]propName;
[propVal=]methodName(parameters);
HTML 없다.
생성

각 브라우져는 <BODY><FRAMESET> 태그를 만나면 자동적으로 해당 window 개체를 갖게 된다.

<BODY>
<FRAMESET>

또한 window.open 메서드를 이용하여 새로운 윈도우를 열어 window 개체 개체를 생성할 수 있다.

[winObj=][window].open(['URL'][,'winTarget'][,'winFeature'])

호출

윈도우의 속성이나 메서드를 호출하는 문법

window.propertyName window.methodName(parameters)
top.propertyName top.methodName(parameters)
parent.propertyName parent.methodName(parameters)
self.propertyName self.methodName(parameters)
winObj.propertyName winObj.methodName(parameters)
frameObj.propertyName frameObj.methodName(parameters)
propertyName methodName(parameters)

인수
window : (윈도우명)

window, winObj(윈도우명), top, parent, self, frameObj 등이 모두 window 개체 대신 사용된다.

frame 개체도 하나의 window 개체이다. selfwindow는 같은 의미이며, 현재의 윈도우를 의미한다.
topparent 속성 또한 비슷한 의미로 top은 최상위 윈도우이고, parent는 프레임(frameset)을 갖는 차상위 윈도우를 의미한다.

propertyName : (속성명)

아래 속성들 중 하나이다.

methodName : (메서드명)

아래 메서드들 중 하나이다. 예를들어 현재의 윈도우를 닫으려면 window.close() 혹은 self.close()로 한다.

parameters : (인수)

methodName에 따라 필요한 인수이다.

사용

현재 윈도우가 있는 것으로 간주되기 때문에, 메서드와 속성을 꼭 불러야 되는 것은 아니고, 상위의 문서도 윈도우 이름을 부르지 않고 document.write('mytext')로도 가능하다. 맨 앞 윈도우 이름이 생략되면 현재의 윈도우로 간주한다.

그러나 이벤트처리기에서 open()이나 close() 메서드를 사용할 때는 반드시 window 또는 self를 사용해야 한다. 그렇지 않으면 close()로 현재의 윈도우를 닫는다. 해당 윈도우를 닫으려면 self.close()를 사용하면 된다.

기술적으로는 onload, onunload 이벤트도 window 개체의 일부지만 <BODY> 또는 <FRAMESET> 속 HTML 태그 속에 넣지 않으면 아무 작동도 하지 않는다.

참조

이 개체는 (영문)HTML3.2에서 정의되었다.

특기

window 개체를 통하여 윈도우의 상태에 관한 정보를 수집하고, 윈도우의 문서에 접속할 수 있으며, 윈도우에서 발생되는 이벤트를 이용하고, 윈도우에 영향을 주는 브라우저의 상태에도 접속할 수 있다.

HTML 문서를 열면 브라우저는 전형적으로 하나의 window 개체를 생성한다. 그러나 문서에 여러개의 프레임들이 있으면(frame이나 iFrame) 브라우저는 원본문서 window와 각 프레임에 해당하는 추가적인 window 개체를 연다. 이들 추가적인 윈도우는 원본문서 윈도우의 자식(child) 윈도우들이 되고 원본문서의 활동에 영향을 받게된다. 예를들어 원본 윈도우가 닫기면 자식윈도우들도 닫긴다. 또한 open, showModalDialogshowModelessDialog등을 사용하여 새로운 window 개체를 만들어 열수 있다.

window 개체가 어떻게 만들어졌던 관계없이 window에 사용되는 속성(property), 메서드(method), (collection)등을 사용할 수 있다.

또한 현재 윈도우에서는 윈도우 지정없이((생략)window.property) 직접 이들 속성등을 사용할 수 있다. 이들 키워드들은 항상 현재의 윈도우 참조를 시도하기 때문이다. 그러나 착오을 줄이기 위하여 대부분의 웹페이지 제작자들은 window.을 생략하지 않고 사용한다.

주의 : 이들 속성(property), 메서드(method), (collection)등은 키워드로의 예약어이므로 변수명에 사용하면 안된다.

이 개체의 스크립트는 3.0에서 부터 사용이 가능하다.

메서드속성
showModalDialog showModelessDialog dialogArguments dialogHeight dialogLeft dialogTop dialogWidth returnValue
이 속성들은 이 두 메서드로 생성된 window에만 사용될 수 있다.


설명을 위한 예제

<SCRIPT>oObj=this.window</SCRIPT>

컬렉션설명과 예제 코드결과참고
frames 문서나 문서에 연관된 윈도우에 정의된 모든 window 개체들의 컬렉션을 반환한다.
<SCRIPT>document.write(top.window.frames.length)</SCRIPT>

개체설명결과
clientInformation 웹 브라우저에 관한 정보를 포함하고 있는 개체이다.
<SCRIPT>document.write(window.clientInformation.appCodeName)</SCRIPT>
clipboardData 편집 작업에서 미리 지정된 잘라내기 저장데이터에 접속을 가능하게 한다.
<INPUT value="선택하여 잘라내기하라" oncut="alert(window.clipboardData.getData('Text'))">
document 주어진 윈도우 개체의 HTML 문서를 참조하는 개체이다.
<SCRIPT>document.write(window.document.linkColor)</SCRIPT>
event 키보드, 마우스등에 관한 이벤트의 상태 정보들을 갖는 개체이다.
<BUTTON onclick="alert(window.event.type)">클릭</BUTTON>
external 호스트 적용에서 제공되는추가적인 외부 개체 모델에 접속할 수 있게하는 개체이다.
<BUTTON onclick="external.AddFavorite(document.location,document.title);">즐겨찾기에 추가</BUTTON>
history 사용자에 의하여 방문했던 주소들의 정보를 갖는 개체이다.
<SCRIPT>document.write(window.history.length)</SCRIPT>
location 현재의 주소(URL)에 대한 정보들을 갖는 개체이다.
<SCRIPT>document.write(window.location.protocol)</SCRIPT>
navigator 웹 브라우저에 대한 정보들을 갖는 개체이다.
<SCRIPT>document.write(window.navigator.cpuClass)</SCRIPT>
screen 사용자 스크린 정보나 표현하는 능력에 관한 정보들을 갖는 개체이다.
<SCRIPT>document.write(window.screen.width+'x'+screen.height)</SCRIPT>

accessKey 속성 IE4 NS6
개체의 접속키를 지정하거나 지정한 접속키를 반환한다.
문법: .accessKey[=chrVal]
코드: document.write(oObj.accessKey='1') 결과:
clientInformation(개체) 속성 IE4 -
⇒ 웹 브라우저의 정보들을 포함하고 있는 개체의 컬렉션이다.
문법: [oVal=].clientInformation
코드: document.write(window.clientInformation.appCodeName) 결과:
clipboardData 예제clipboardData(개체) 속성 IE4 -
⇒ 잘라낸 클립보드 데이터를 반환한다.
문법: .clipboardData.getData('Text')
closed 속성 IE4 NS3
⇒ 윈도우가 닫혔는지를 부울값으로 반환한다. 닫혔으면 true를 반환한다.
문법: [bVal=].closed
코드: document.write(window.closed); 결과: 해설: 닫혀진 것이 틀리다(false)=열려 있다.
defaultStatus 속성 IE3.02 NS2
⇒ 윈도우의 디폴트로 출력되는 브라우저 왼측 맨아래 상태(status)바 메세지의 내용 문자열을 반환하거나 지정한다.
문법: .defaultStatus[=sVal]
코드: <INPUT type=button value="마우스를 올리고 상태바를 보라" onMouseOver="window.defaultStatus='디폴트 상태바 메세지'" onMouseOut="window.defaultStatus=''"> 결과: 예제를 참고하라
dialogArguments(컬렉션) 속성 IE4 -
⇒ 메인 윈도우에서 모달 다이얼로그 박스로 보낸 변수 또는 변수들의 배열을 반환한한다.
컨트롤에서 HTML 대화 상자로 전달한 값을 가져올 수도 있다.
문법: [cVal=].dialogArguments
모달 대화창 예제용 공통 코드:
<SCRIPT>
function showDial(){
  dialogObj=showModalDialog('../object/exp/wmodalDial.html','',
    'dialogTop=300px;dialogLeft=100px;dialogHeight=10em;dialogWidth=30em')
}
</SCRIPT>
<INPUT type=button value="모달 대화창 예제" class=expx style=width:14em;float:right onclick="showDial()">
dialogHeight 속성 IE4 -
⇒ 다이얼로그 대화창 윈도우 높이를 반환하거나 설정한다.
문법: .dialogHeight[=iVal]
코드: document.write(window.dialogHeight);
dialogLeft 속성 IE4 -
⇒ 다이얼로그 대화창 윈도우 좌측 모서리의 x좌표를 반환하거나 설정한다.
문법: [=iVal].dialogLeft
코드: document.write(window.dialogLeft);
dialogTop 속성 IE4 -
⇒ 다이얼로그 대화창 윈도우 상단의 y좌표를 반환하거나 설정한다.
문법: [=iVal].dialogTop
코드: document.write(window.dialogTop);
dialogWidth 속성 IE4 -
⇒ 다이얼로그 대화창 윈도우의 너비를 반환하거나 설정한다.
문법: [=iVal].dialogWidth
코드: document.write(window.dialogWidth);
document(개체) 속성 IE3.02 NS2
⇒ 값은 윈도우 내의 document 개체의 값을 갖는다.
문법: [oVal=].document
코드: document.write(window.document); 결과:
코드: document.write(window.document.location); 결과:
코드: document.write(window.document.title); 결과:
코드: window.open('exp/wwindow0.html','test','width=800,height=500,status=yes,scrollbar=yes') 결과: 예제를 참고하라
event(개체) 속성 IE4 -
⇒ 윈도우의 이벤트(event) 개체를 참조한다. 읽기 전용이다.
문법: [oVal=].event
코드: document.write(window.event);
결과:
external(개체) 속성 IE5 -
⇒ 호스트에서 제공하는 Explorer 브라우저 콤포넨트의 추가적인 개체 모델에 접속할 수 있다.
읽기 전용의 platform 버전이다.
문법: [oVal=].external.menuArguments
코드: <BUTTON onclick="external.AddFavorite(document.location,document.title);">즐겨찾기에 추가 클릭</BUTTON>
결과:
frames(컬렉션) 속성 IE3.02 NS2
⇒ 배열변수로서 현재 윈도우의 이름 주어진 모든 부속 프레임들의 이름을 갖는다.
문법: [cVal=].frames
문법: [oVal=].frames(index|sVal)
코드: document.write(window.frames); 결과:
코드: document.write(window.frames.name); 결과:
코드: document.write(top.window.frames.length); 결과:
코드: for (i=0;i<top.window.frames.length;i++){document.write('('+top.window.frames[i].name+') ')} 결과:
코드: window.open('exp/xwindow8.html','jsmain','') 결과: 예제를 참고하라
frameElement(개체) 속성 IE -
⇒ 모체 윈도우의 문서에 포함되어있는 <FRAME> 이나 <IFRAME> 개체를 반환한다. 읽기 전용으로 디폴트 값은 없다.
문법: [oVal=].frameElement
코드: document.write(window.frameElement.nodeName); 결과:
코드:<BUTTON onclick="window.frameElement.src='window.html#frames'">현재 문서 윗 속성(frames)으로 연결</BUTTON>
결과:
history(개체) 속성 IE4 NS3
⇒ 값은 윈도우가 방문한 기록인 history 개체이며 윈도우가 방문한 페이지 URL의 상세값을 갖는다.
문법: [oVal=].history
코드: document.write(window.history) 결과:
코드: document.write(window.history.length); 결과:
코드: <INPUT type=button value="방문기록 보기 예제" onClick="window.open('../object/exp/xhistory.html','jsmain','')">
결과: 예제를 참고하라
innerHeight / innerWidth 속성 - NS4
⇒ 윈도우의 내부의 높이 / 너비를 픽셀단위로 반환하거나 지정한다.
Explorer에서는 document.body.clientHeigh, document.body.clientHeigh 메서드를 사용하라.
문법: .innerHeight[=iVal]
문법: .innerWidth[=iVal]
코드: document.write(window.innerHeight+' / '+window.innerWidth); 결과: 생략
java 속성 - NS3
⇒ java.* Java 팩키지(package)의 class이다.
문법: [sVal=][window.]Package.java
코드: 결과: 생략
length 속성 IE4 NS2
⇒ 윈도우의 부속 프레임 갯수를 반환하면 frames 배열변수의 length 속성을 사용한 것과 동일한 값이 된다.
문법: [iVal=].length
코드: document.write(top.window.length); 결과:
코드: for (i=0;i<top.window.length;i++){document.write('<BR>'+i+'='+top.window[i].document.title)} 결과:
location(개체) 속성 IE3.02 NS2
⇒ 윈도우의 현재 URL 상세를 갖고 그 값은 항상 윈도우의 location 개체이다. 현재의 주소를 반환하거나 설정한다.
문법: .location[=urlVal] // newLocation이 지정되면 그 페이지로 이동한다.
코드: document.write(window.location); 결과:
코드: document.write(top.window.location); 결과:
코드: window.open('exp/wwindow7.html','test','width=900,height=500,status=yes') 결과: 예제를 참고하라
locationbar 속성 - NS4
⇒ 윈도우의 주소칸이나 북마크(사용자가 주소칸에 주소를 입력하였을때) 상세를 나타내는 윈도우의 부분을 참조하며, 디폴트는 보이는 것이고(visible=true) 안 보이게(visible=false) 설정 할 수있다.
문법: .locationbar[.visible=false]
코드: window.locationbar.visible=true; 결과: 생략
menubar 속성 - NS4
⇒ 윈도우의 여러 풀다운메뉴(파일, 편집, 보기, 등)를 나타내는 윈도우의 부분을 참조하며, 디폴트는 보이는 것이고(visible=true) 안 보이게(visible=false) 설정 할 수있다.
문법: .menubar[.visible=false]
코드: window.menubar.visible=true; 결과: 생략
name 속성 IE3.02 NS2
⇒ 윈도우의 명칭 혹은 윈도우의 프레임 이름을 반환하거나 설정한다.
문법: .name[=sVal]
코드: document.write(window.name); 결과:
코드: document.write(top.jsright.window.name); 결과:
코드: window.open('exp/xwindow8.html','jsmain','') 결과: 예제를 참고하라
navigator (개체) 속성 IE4 NS2
⇒ 윈도우 브라우저 개체를 반환한다. 상세한 내용은 navigator 개체를 참조하라.
문법: [oVal=][.|navigator
코드: document.write(navigator.appName); 결과:
netscape 속성 - NS3
⇒ netscape.* Java 팩키지(package)의 class이다.
문법: [window.]Package.netscape
코드: 결과: 생략
offscreenBuffering 속성 IE4 NS4
⇒ 윈도우에서 문서의 오프-스크린 버퍼링을 사용할지를 반환하거나 지정한다.
문법: .offscreenBuffering[=auto|true|false]
코드: document.write(window.offscreenBuffering); 결과:
opener 속성 IE4 NS3
⇒ 윈도우를 연 개체를 반환하거나 설정한다. window.open 메서드를 사용하여 윈도우를 열었을 때만 목표 윈도우를 연 윈도우를 반환한다. 여러 용도로 사용되는데 예를 들면 원본 윈도우를 닫기 위하여 window.opener.close()로 하면 된다.
문법: .opener[=oVal]
코드: window.open('exp/wwindow0.html','test','width=800,height=500,status=yes,scrollbar=yes') 결과: 예제를 참고하라
outerheight / outerwidth 속성 - NS4
⇒ 윈도우 테두리 외부까지의 픽셀 단위의 높이와 너비를 반환하거나 설정한다.
문법: .outerheight[=iVal]
문법: .outerwidth[=iVal]
코드: document.write(window.outerheight+' / '+ window.outerwidth); 결과: 생략
Packages 속성 - NS3
⇒ Packages는 구성자(constructor)나 호출메서드 없이 자동으로 접속할 수 있도록 사전에 정의된 javascript 개체이며, javascript code속에서 Java class들의 접속에 사용되는 최상위 개체를 참조한다.
netscape, sun, java Package들이 있다.
문법: .Packages.java.awt.Frame();
코드: var theFrame=new Packages.java.awt.Frame(); 결과: 생략
pageXOffset / pageYOffset 속성 - NS4
⇒ 현재 페이지의 보이는 윈도우 상에서 왼쪽 맨위 모서리의 X, Y 위치를 반환한다.
Explorer에서는 document.body.scrollTop, document.body.scrollLeft을 이용하라.
문법: .pageXOffset[=iVal]
문법: .pageYOffset[=iVal]
코드: document.write(window.pageXOffset+' / '+ window.pageYoffset); 결과: 생략
parent 속성 IE3.02 NS2
⇒ 개체 체계도상 현재의 호출 윈도우 프레임을 포함하는 바로 상위 윈도우나 프레임을 반환한다. 현재의 윈도우가 프레임의 자식일 경우에만 반환한다.
문법: [oVal=].parent
코드: document.write(window.parent.location); 결과:
코드: document.write(window.parent.document.title); 결과:
코드: window.open('exp/xwindow8.html','jsmain','') 결과: 예제를 참고하라
personalbar 속성 - NS4
⇒ 사용자 개인작업바(폴더바)와 관련되며 독립적으로 보이게(true)하거나 안보이게(false) 설정할 수 있다.
문법: .personalbar[.visible=false|true]
코드: document.write(window.personalbar); 결과: 생략
returnValue 속성 IE4 -
⇒ Modal 다이얼로그 박스에서 메인 윈도우로 출력될 값을 반환하거나 지정한다.
문법: .returnValue[=bVal]
코드: document.write(window.returnValue=true); 결과:
screen (개체) 속성 IE4 NS4
⇒ 스크린 개체를 반환한다.
문법: [oVal=].screen
코드: document.write(window.screen,' | ',window.screen.availWidth,' | ',window.screen.availHeight); 결과:
screenLeft 속성 IE5 -
⇒ 현재의 윈도우나 프레임의 스크린 왼쪽 간격(x 좌표)을 픽셀 단위로 반환한다.
문법: [iVal=].screenLeft
코드: document.write(window.screenLeft); 결과:
screenTop 속성 IE5 -
⇒ 현재의 윈도우나 프레임의 스크린 위쪽 간격(y 좌표)을 픽셀 단위로 반환한다.
문법: [iVal=].screenTop
코드: document.write(window.screenTop); 결과:
screenX, screenY 속성 - NS4
⇒ 이벤트가 발생된 싯점에서 스크린에에 상대적인 커서의 수평/수직 위치를 픽셀단위로 반환한다..
문법: [iVal=].screenX
문법: [iVal=].screenY
코드: document.write(window.screenX,window.screenY); 결과: 생략
scrollbars 속성 - NS4
⇒ 브라우저의 화면굴림바(수직과 수평)를 독립적으로 보이게(true)하거나 안보이게(false) 설정할 수 있다.
문법: .scrollbars[.visible=false|true]
코드: document.write(window.scrollbars); 결과: 생략
secure 속성 - NS4
⇒ .
문법: .secure
코드: document.write(window.secure); 결과: 생략 -->
self 속성 IE3.02 NS2
⇒ 현재의 윈도우나 프레임 자체를 참조한다.
문법: [oVal=][.]self
문법: self.propertyName 혹은 self.methodName
코드: document.write(self.location); 결과:
코드: document.write(self.document.title); 결과:
코드: window.open('exp/xwindow8.html','jsmain','') 결과: 예제를 참고하라.
status 속성 IE3.02 NS2
⇒ 언제나 설정할 수 있으며, 연결 태그에 onMouseOver를 했을 때 윈도우 맨아래 상태 바에 표시되는 메시지를 반환하거나 설정다.
문법: .status[==sVal]
코드: <INPUT type=button value="마우스를 올리고 상태바를 보라" onMouseOver="window.status='상태 메세지'" onMouseOut="window.status=''"> 결과: 예제를 참고하라.
statusbar 속성 - NS4
⇒ 상태바의 속성을 가지며, visible의 디폴트는 보이는 것(true)이고, 안보이게(false) 설정할수 있다.
문법: .statusbar[.visible=false|true]
코드: document.write(window.statusbar); 결과: 생략
sun 속성 - NS3
⇒ sun.* Java 팩키지(package)의 class이다.
문법: [window.]Package.sun
코드: 결과: 생략
toolbar 속성 - NS4
⇒ 윈도우의 도구바(tool bar)가 보이나(visible=true) 안보이나(false)의 불린값을 반환하거나 설정한다. 열린 윈도우에는 작용하지 않고 열리기 전에 설정하여야 한다.(UniversalBrowserWrite privilege 필요)
문법: .toolbar[.visible=false|true]
코드: document.write(window.toolbar); 결과: 생략
top 속성 IE3.02 NS2
⇒ 현재 프레임이 소속되어 있는 최상위 윈도우를 반환한다. 현재의 윈도우가 프레임의 자식일 경우에만 반환한다.
문법: [=oVal=][window].top
문법: [window].top.propertyName 혹은 [window].top.methodName
코드: document.write(top.window.location); 결과:
코드: document.write(top.window.document.title); 결과:
코드: window.open('exp/xwindow8.html','jsmain','') 결과: 예제를 참고하라.
window 속성 IE3.02 NS2
⇒ 현재의 윈도우나 frame(프레임) 개체를 참조한다. self와 같다.
문법: [=oVal=]window
문법: .propertyName 혹은 .methodName
코드: document.write(window.location); 결과:
코드: window.open('exp/xwindow8.html','jsmain','') 결과: 예제를 참고하라

alert 메서드 IE3.02 NS2
⇒ 경고박스에 메시지와 확인단추가 표시된다.
문법: .alert('message')
코드: <INPUT type=button value="클릭으로 경고" onClick="window.alert('클릭했다')"> 결과: 예제를 참고하라.
atob 메서드 - NS4
⇒ base-64 엔코딩을 사용하여 엔코딩한 문자열 데이터를 디코딩한다.
문법: .atob
코드:encodedData=window.btoa('example'); document.write(window.atob(encodedData)); 결과: 생략
attachEvent 메서드 IE5 -
⇒ 이벤트에 특정 기능을 묶어, 기능함수가 개체에서 이벤트가 발생되면 언제나 호출되게 한다.
이벤트의 제거는 detachEvent에서 한다. 반환값은 부울값이다.
문법: bSuccess=window.document.attachEvent(event,functObj)
event는 필수요소이고, 표준 이벤트 문자열이다. functObj도 필수요소이고 이벤트가 발생되면 호출될 기능함수이다.
코드: <SCRIPT>function callFunc(){alert('ondblclick 이벤트 발생')}</SCRIPT><INPUT type=button value="attachEventEvent 설정" onclick="document.detachEvent('ondblclick',callFunc);document.attachEvent('ondblclick',callFunc)">
결과: // 단추를 클릭한 후 문서 위 아무데서나 더블클릭 해 보라.
예제 detachEvent에서 제거 할 수 있다.
back 메서드 - NS4
Explorer에서는 history.back()에 해당되며, 브라우저의 뒤로 단추를 클릭했을 때와 같이 현재의 최상위 윈도우에서 이전 페이지 상태로 돌아간다.
문법: .back()
코드: <INPUT type="button" value="뒤로" onClick="window.back()"> 결과: 생략
blur 메서드 IE4 NS3
이 매서드는 현재의 윈도우에서 포커스를 제거하여 바로 전에 시용했던 개체에 초점을 주고 onblur 이벤트를 발생시킨다.
문법: .blur()
코드: <SPAN id=show1></SPAN>
<SCRIPT>if (window.blur()) show1.innerHTML='blur'; else show.innerHTML='focus';window.focus()</SCRIPT>
결과:
btoa 메서드 - NS4
⇒ base-64 엔코딩을 사용하여 엔코딩한 문자열을 반환한다.
문법: .btoa
코드: document.write(window.btoa('example')); 결과: 생략
예제captureEvents 메서드 - NS4
⇒ 특정 종류의 모든 이벤트를 포착하도록 지시한다. 이벤트 목록을 참고하라.
문법: .captureEvent(eventType)
clearInterval 메서드 IE4 NS4
⇒ 이전 setInterval 메서드에 의하여 설정된 시간 진행을 취소한다.
문법: .clearInterval(intervalID)
코드: window.open('exp/wwindow4.html','test','width=900,height=500,status=yes,resizable=yes') 결과: 예제를 참고하라.
clearTimeout 메서드 IE3.02 NS2
⇒ 이전 setTimeout 메서드에 의하여 설정된 시간진행을 취소한다.
문법: .clearTimeout(timeoutID)
코드: window.open('exp/wwindow4.html','test','width=900,height=500,status=yes,resizable=yes')
close 메서드 IE3.02 NS2
⇒ 지정한 윈도우를 닫는데 사용된다. 윈도우 참조가 없으면 현재의 윈도우를 닫는다.
HTML Application (HTA)을 닫을 때도 사용된다.
주의: 이 메서드는 open() 메서드에 의해 열린 윈도우에만 해당되고, 그렇지 않을 경우에는 닫아을 것인가를 확인하는 대화창(prompt)이 뜬다. 단 현재 윈도우가 방문한 기록에서 유일한 윈도우의 경우는 예외로 확인을 필요로 하지 않는다.
문법: .close()
코드: window.open('exp/xwindow5.html','test','width=800,height=500,status=yes') 결과: 예제를 참고하라
코드: <INPUT type=button value='새창열기' onClick="javascript:str='&lt;script&gt;document.write(window.opener.location);&lt;/script&gt;&lt;br&gt; &lt;input type=button value=창닫기 onClick=window.close()&gt;'; newWin=window.open();newWin.document.write(str)">
<INPUT type=button value='새창닫기' onClick="newWin.[window.]close()">
confirm 메서드 IE3.02 NS2
⇒ 메시지가 들어간 확인 메시지 박스를 띄워준다.
결과에 따라 확인하면 true를 취소하면 false를 반환한다.
문법: .confirm('message')
코드: <INPUT type=button value="확인 클릭" onClick="show3.innerHTML=window.confirm('확인')">
<SPAN id=show3 class=blue style="border:solid 1 blue">결과 표시 위치</SPAN>
결과: 결과 표시 위치
crypto 속성 - NS4.04
⇒ 브라우저의 보안 암호(encryption) 기능에 접속하여 사용할 수 있도록 하는 개체이며 읽기 전용이다.
문법: .crypto.random(numberOfBytes)
문법: .crypto.signText(text,selectionStyle[,authority1[,authority2[,...autorityN]]])
코드: document.write(window.crypto); 결과: 생략
createPopup 메서드 IE -
popup 윈도우를 생성한다.
문법: window.documentcreatePopup(event,funcion)
코드: <INPUT type=button value="createPopup" onclick="popObj=window.createPopup();popObj.document.body.innerHTML='<DIV style=height:40;background:blue;color:aqua><B>popup 창</B></DIV>';popObj.show(120,250,150,30,document.body);">
결과: // 클릭하여 팝업창을 열어보라.
detachEvent 메서드 IE5 -
attachEvent 이벤트로 첨부된 이벤트를 제거한다. 반환값은 없다.
문법: window.documentdetachEvent(event,funcion)
코드: <INPUT type=button value="detachEvent" onclick="document.detachEvent('ondblclick',callFunc)"></SPAN>
결과: // 클릭 후에는 예제 attachEvent에서 설정된 이벤트가 제거된다. 제거 후 더블클릭해 보라.
disableExternalCapture 메서드 - NS4
⇒ 아래 enableExternalCapture() 메서드로 활성환된 이벤트 추출을 비활성화 시킨다.
문법: .disableExternalCapture()
코드: window.enableExternalCapture(); 결과:
enableExternalCapture 메서드 - NS4
⇒ 윈도우가 여러 서비스로 부터 로딩된 문서들 속에 있는 이벤트들을 추출하도록 프레임에 허용한다.
문법: .enableExternalCapture()
코드: window.enableExternalCapture(); 결과:
execScript 메서드(전역기능성) IE4 -
⇒ 지정한 스크립트 코드를 수행한다.
문법: [.]execScript(jsCode[,language])
코드: <INPUT type=button value="execScript 예제" onClick="window.execScript(alert('execScript'))"> 결과:
find 메서드 - NS4
⇒ 윈도우에서 지정한 문자열을 찾아 부울값을 반환한다. 찾을 문자열, 대소분자 구별(부울값)뒤로 검색(부울값) 인수들을 제공한다. 만일 문자열 인수가 제공되지 않으면, 찾기 대화창을 띄워 설정할 수 있게 한다.
문법: .find([string[,caseSensitive, backward]])
코드: <INPUT type=button onClick="window.find('javascript',false,true)" value="찾기 예제">
예제focus 메서드 IE4 NS3
⇒ 지정된 윈도우에 초점을 지정한다. 초점을 받으면 맨 위에 나타나고 작업하는 상태로 된다는 의미이다. 이는 열려있는 윈도우가 여러개 있을때 맨 위에 뜨도록 윈도우를 지정하고 초점을 받은 개체에는 onfocus 이벤트가 발생된다.
문법: .focus()
코드: <SPAN id=show4></SPAN> <SCRIPT>if (window.focus) show4.innerHTML='focus'; else show.innerHTML='blur'</SCRIPT>
결과:
forward 메서드 - NS4
Using ⇒ 브라우저의 앞으로 단추를 눌렀을 때와 동일하다. 현재 윈도우의 최상위 창에서 이미 방문했던 방문한 기록(histroy) 목록의 다음 주소(URL)로 이동한다. 단. 현재 히스토리 목록에서 앞으로의 주소가 없으면 앞으로는 이동할 수 없다.
Explorer에서는 history.forword() 혹은 history.go(N)를 사용하라.
문법: .forward()
코드: <INPUT type=button value="앞으로" onClick="window.forward()"> 결과: 생략
예제handleEvent 메서드 - NS4
⇒ 특정 이벤트의 처리기를 호출하는데 사용된다.
문법: .handleEvent('eventID')
코드: <INPUT type=button value="이벤트 처리" onClick="window.handleEvent('onClick')"> 결과: 생략
home 메서드 NS4
⇒ 브라우져 의 홈페이지 아이콘을 클릭한 것과 같은 효과를 갖는다. 사용자가 홈페이지로 설정한 페이지가 열린다. 말하자면 사용자가 설정한 홈페이지로 이동한다.
문법: .home()
코드: <INPUT type=button value="홈으로" onClick="window.home()"> 결과: 생략
moveBy 메서드 IE4 NS4
⇒ 현재위치에서 지정한 거리(x, y pixel)만큼 이동시킨다.
문법: .moveBy(xPosition,yPosition)
코드: window.open('exp/wwindow1.html','test','width=800,height=500,status=yes') 결과: 예제를 참고하라
moveTo 메서드 IE4 NS4
⇒ 윈도우의 왼쪽 면과 윗면을 지정한 위치 좌표(x,y)로 이동시킨다.
문법: .moveTo(xPosition,yPosition)
코드: window.open('exp/wwindow1.html','test','width=800,height=500,status=yes') 결과: 예제를 참고하라
navigate 메서드(전역기능성) IE3.02 -
⇒ 지정한 주소로 항해한다.
문법: .navigate(URL)
코드: <SPAN style="border:solid 1 blue;color:blue;background:fee;cursor:hand" onClick="Javascript:window.navigate('jsList.html')"> window.navigate('jsList.html')</SPAN> 결과: window.navigate('jsList.html')
open 메서드 IE3.02 NS2
⇒ 지정된 주소와 특성으로 새로운 윈도우를 연다.
문법: .open([URL][,winTarget][,winFeature])
코드: window.open('exp/xwindow5.html','test','width=800,height=500,status=yes') 결과: 예제를 참고하라
print 메서드 IE5 NS4
⇒ 윈도우 문서와 연관된 내용을 용지에 인쇄한다.
문법: .print()
코드: window.open('exp/wwindow9.html','test','width=900,height=500,status=yes') 결과: 예제를 참고하라
prompt 메서드 IE3.02 NS2
⇒ 사용자가 입력할 수 있는 대화창을 연다.
문법: .prompt(message[,defaultInput])
코드: <INPUT type=button value="prompt 창 열기 클릭" class=exp1 style="width:11em" onClick="str=window.prompt('Prompt 예제','입력해 보라');show6.innerHTML=str"><span class=blue style="border:solid 1 blue" id=show6>결과 표시 위치</span> 결과: 결과 표시 위치
releaseEvents 메서드 - NS4
window개체의 어떤 지정된 타입(eventType)의 캡쳐되어 이벤트를 해제하고 이벤트 개체의 하부 체계로 보낸다.
문법: .releaseEvents('eventType')
resizeBy 메서드 IE4 NS4
⇒ 현재의 윈도우의 크기를 왼쪽 맨위 모서리는 고정시키고 지정된 길이에 따라 오른쪽 아래로 다시 설정한다.
문법: .resizeBy(horizPixels,vertPixels)
코드: window.open('exp/wwindow1.html','test','width=800,height=500,status=yes') 결과: 예제를 참고하라
resizeTo 메서드 IE4 NS4
⇒ 현재의 윈도우의 크기를 왼쪽 맨위 모서리를 고정시키고 지정된 픽셀수 만큼 길이만큼 늘리거나(양수) 줄인다(음수).
문법: .resizeTo(horizPixels,vertPixels)
코드: window.open('exp/wwindow1.html','test','width=800,height=500,status=yes') 결과: 예제를 참고하라
routeEvent 메서드 - NS4
⇒ 캡쳐된 이벤트를 윈도우 이벤트체계 밑에 추가한다. 이벤트를 윈도우(문서나 layer) 원래 개체에 전달하는데, 목표 개체가 윈도우의 하층개체이면 그 하층개체에 전달한다.
문법: .routeEvent(eventType)
scroll 메서드 IE4 NS3
⇒ 윈도우의 지정된 위치로 화면굴림(scroll)을 한다. 이 메서드는 폐기되며, 이 대신 scrollTo를 사용하라.
문법: .scroll(xVal,yVal)
scrollBy 메서드 IE4 NS4
⇒ 윈도우 내용지역을 지정한 픽셀수 만큼 화면굴림(scroll)한다. 이 메서드는 문서내용이 윈도우에서 한번에 볼 수 없을 경우에만 유용하고, 화면굴림 보임(visible) 속성이 true일 경우에 사용할 수 있다.
문법: .scrollBy(xVal,yVal)
코드: window.open('exp/wwindow2.html','test','width=800,height=600,top=100,left=100,status=yes,scrollbars=yes,resizable=yes')
결과: 예제를 참고하라
scrollTo 메서드 IE4 NS4
⇒ 윈도우의 보이는 부분에서 왼쪽 맨위를 기준으로 지정된 좌표로 화면굴림(scroll)을 한다.
문법: .scrollTo(xVal,yVal)
코드: window.open('exp/wwindow2.html','test','width=800,height=600,top=100,left=100,status=yes,scrollbars=yes,resizable=yes')
결과: 예제를 참고하라
setActive 메서드 IE
⇒ 개체에 초점을 주지 않은 상태에서 개체를 활성화 시킨다.
문법: .setActive()
코드: top.frames[0].setActive() 결과:
setHotkeys 메서드 - NS4
⇒ 메뉴등을 열게하는 핫키를 설정한다. 'no' 혹은 0은 불활성하게 하나 보안과 종료의 핫키는 작용된다.
문법: .setHotkeys()
코드: window.setHotkeys(); 결과: 생략
setInterval 메서드 IE4 NS4
⇒ 지정한 시간간격의 밀리초(milliseconds)로 윈도우의 시간설정 기능함수를 호출하거나 검정한다.
문법: .setInterval(expression/function,milliseconds)
코드: window.open('exp/wwindow4.html','test','width=900,height=500,status=yes,resizable=yes') 결과: 예제를 참고하라
setResizable 메서드 - NS4
⇒ 사용자가 윈도우 크기 조정함을 허용하는가를 불린값으로 반환하거나 지정한다. 디폴트는 true이다
문법: .setResizable(true|false)
코드: window.setResizable(); 결과: 생략
setTimeout 메서드 IE3.02 NS2
⇒ 이미 지정된 밀리초(millisecond)가 지났는지 평가하기 위하여 윈도우의 기능함수를 호출하거나 검정하여 시간을 진행한다.
문법: .setTimeout(expression/function,milliseconds)
코드: window.open('exp/wwindow4.html','test','width=900,height=500,status=yes,resizable=yes') 결과: 예제를 참고하라
setZOptions 메서드 - NS4
⇒ 윈도우의 z-order stacking 수준을 지정한다. 윈도우간의 보이는 우선순위를 결정한다.
문법: setZOptions(windowPosition)
코드: 결과: 생략
showHelp 메서드 IE4 -
⇒ 지정된 URL이 제공하는 도움말 파일을 출력한다. IE의 도움말과 동시에 사용할 수있다.
문법: winObj.showHelp(url[,ContextID])
코드: <INPUT type=button value="도움말 파일" onClick="window.showHelp('exp/wshowHelp.htm','helpObj')"> 결과:
showModalDialog 메서드 IE4 -
⇒ 지정된 주소의 문서로 대화(다얄로그) 박스를 열어 보여준다.
문법: .showModalDialog(url[,argument[,features]])
features='DialogWidth=폭;DialogHeight=높이';등
코드: <INPUT type=button value="showModalDialog" onClick="window.showModalDialog('exp/wmodalDial.html','','DialogTop:10;DialogLeft:20;DialogWidth:50;dialogHeight:22')"> 결과:
showModelessDialog 메서드 IE5 -
⇒ 대화(다얄로그) 박스를 열어 보여준다.
문법: .showModelessDialog(url[,argument[,features]])
코드: <INPUT type=button value="showModelessDialog" onClick="window.showModelessDialog('exp/wmodalDial.html','','DialogTop:10;DialogLeft:20;DialogWidth:50;dialogHeight:22')"> 결과:
stop 메서드 - NS4
⇒ 다운로드 중에 있는 윈도우의 다운로드를 중단한다. 브라우져의 중지 단추를 누르는 것과 같다.
문법: .stop()
코드: <INPUT type=button value="로딩 중지" onClick="window.stop()"> 결과: 생략

이벤트설명
onactivate 엘레멘트 개체가 activeElement 속성으로 설정되면 발생한다.
onafterprint 관련된 문서를 인쇄하거나 인쇄 미리보기를 후 즉시 개체에 발생한다.
onbeforedeactivate 모체 문서에서 activeElement 속성의 엘레멘트 개체가 현재 개체로 다른 개체로 변경되기 바로 전에 발생한다.
onbeforeprint 관련된 문서를 인쇄하거나 인쇄 미리보기하기 바로 전에 개체에 발생한다.
onbeforeunload 문서가 언로드되기 바로 전에 발생한다.
onblur 예제 IE4 NS3 개체가 초점을 생실했을 때 발생한다.
문법: .onblur='JsCode'
oncontrolselect 사용자가 개체의 제어 선택을 하려고 할 때 발생한다.
ondeactivate 모체 문서에서 activeElement 속성의 엘레멘트 개체가 현재 개체로 다른 개체로 변경되면 발생한다.
ondragdrop NS4 객체나 문자열등을 끌어다 놓았을 때(DragDrop) 지정된 코드를 수행한다.
문법: .ondragdrop='JsCode'
onerror 예제 IE4 NS3 개체에서 읽기 오류가 발생했 때 지정된 코드를 수행한다.
문법: .onerror='JsCode'
onfocus 예제 IE4 NS3 개체에 초점(포커스)이 주어 졌을 때 발생한다.
문법: .onfocus='JsCode'
onhelp 활성 윈도우에서 도움말을 위하여 F1 키를 누르면 발생된다.
onload 예제 IE3.02 NS2 개체가 부라우저에 로딩이 완료되면 바로 발생한다.
문법: .onload='JsCode'
onmove NS4 개체가 이동하면 발생한다.
문법: .onmove='JsCode'
onmoveend 개체의 이동이 중지되면 발생한다.
onmovestart 개체가 이동하기 시작하면 발생한다.
onresize IE4 NS4 윈도우나 프레임이등 개체의 크기가 변경되었 때 발생한다.
문법: .onresize='JsCode'
onresizeend 제어 섹션에서 개체의 크기 변경이 완료되면 발생한다.
onresizestart 제어 섹션에서 개체의 크기 변경이 시작되면 발생한다.
onscroll 개체의 스크롤 박스의 스크롤바를 굴려 위치를 변경시키면 발생한다.
onunload 예제 IE3.02 NS2 개체에서 초점이 다른 곳으로 이동하여 내용이 언로드되었 때 언로드되기 바로 전에 발생한다.
문법: .onunload='JsCode'

예제
속성들
window.opener.location, window.document.location, window.document.title,
window.document.body.clientHeight, window.document.body.clientWidth
크기/위치
window.moveTo(x,y), window.moveBy(x,y),
window.resizeTo(x,y), window.resizeBy(x,y),
document.body.clientHeight window.document.body.clientWidth,
window.document.body.clientTop, window.document.body.clientLeft,
window.location.reload()
스크롤
window.scrollTo(x,y), window.scrollBy(x,y),
window.document.body.scrollTop, window.document.body.scrollLeft,
window.document.body.scrollHeight, window.document.body.scrollWidth,
window.location.reload()
타임
window.setInterval('myFunction()',timeVal), window.clearInterval(myTimer),
window.setTimeout('myFunction()',timeVal), window.clearTimeout(myTimer)
열기/닫기
myWin=window.open('myURL','myFrmae','myStatus'),
myWin.document.write('myHTML'), myWin.document.writeln('myHTML'),
window.close(), myWin.close(), self.close()
윈도우 참조
window.location, window.top.location, top.location,
window.self.location, self.location, this.location, document.location
윈도우/프레임
top.window.frames.length, top.window.frames[0].document.title,
top.window.frames[1].frames[0].name, top.frames[1].frames[1].name,
parent.name, top.frameName1.frameName2.document.title
기타
window.alert('message'), window.confirm('message'), window.prompt('message'),
window.print()