Javascript

beforeunload 이벤트를 이용한 웹페이지를 닫을 때의 메시지 표시

웹 페이지 상의 채팅화면이나 오픈마켓의 구매 페이지 등을 사용해보면, 웹 페이지를 닫거나 새로고침을 하기 직전에 “이 페이지에서 나가시겠습니까?”라는 메시지가 표시되는 경우가 있습니다. 구현하는 방법은 의외로 간단합니다. window 객체의 beforeunload 이벤트를 잡아, 메시지 창에 표시할 내용을 반환해주면 됩니다.

window.onbeforeunload = function() {
	return '표시할 메시지를 반환';
}

Opera에서는 작동하지 않지만, IE 각 버전을 포함한 여타의 브라우저에서는 잘 작동합니다. 중요도가 높아 새로고침을 하거나 창이 닫기 직전에 사용자의 확인을 구해야 하는 경우가 있다면 유용하게 사용할 수 있습니다.

Continue reading

Javascript

자바스크립트 샌드박스(Sandbox)와 BOM(Browser Object Model)

샌드박스의 의미

샌드박스는 아이들이 들어가 놀기 위해서 모래를 채워넣은 상자를 의미합니다. 모래상자 안에서 무엇을 하더라도 상관없지만, 모래상자 바깥으로 나와 집을 어지럽히지는 말라는 부모의 깊은 뜻이 숨겨진 물건이지요.

컴퓨터 보안에서도 샌드박스 환경이라는 단어가 사용됩니다. 이 단어는 실행한 프로그램이 접근할 수 있는 자원들을 제한하는 대신, 제한되지 않은 자원들에 대해서만은 자유롭게 접근하고 조작할 수 있도록 허락한 환경을 의미합니다. 샌드박스는 실행한 프로그램이 자원에 마음대로 접근하여 시스템에 영향을 미치는 심각한 오작동을 일으키거나 시스템을 공격하는 일을 미연에 방지할 수 있게 합니다.

(more…)

Continue reading