• 회원가입
  • 로그인
  • 구글아이디로 로그인

[api] HTML5 - Web Storage - 웹저장소 (= 웹스토리지) (IE8 이상) ※ 마우스 클릭횟수 점검

목차
  1. Web Storage 예제 - localStorage에 텍스트 저장
  2. Web Storage 정의
  3. Web Storage 객체종류
  4. localStorage 예제 - 클릭횟수 구하기
  5. sessionStorage 예제 - 클릭횟수 구하기 (현재세션에서)


Web Storage 예제 - localStorage에 텍스트 저장

 

<div id="demo"></div>


<script>

if (typeof(Storage) !== "undefined") { // Web Storage 지원여부 체크

  localStorage.setItem("site", "홈짱닷컴 Homzzang.com"); // 저장

  document.getElementById("demo").innerHTML = localStorage.getItem("site"); // 호출 및 출력

} else {

  document.getElementById("demo").innerHTML = "localStorage 지원 않는 브라우저는 개나 줘버려.";

}

</script>

 

결과보기 


[참고1]
위 파란색 코드는 아래처럼 표현 가능.

 

localStorage.site = "홈짱닷컴 Homzzang.com"; // 저장

document.getElementById("demo").innerHTML = localStorage.site; // 호출 및 출력

 


[참고2]

localStorage.removeItem("site"); // 삭제

 


Web Storage 정의 

 

웹 애플리케이션이 사용자 브라우저 내에 로컬로 데이터 저장 가능.

 


 

1.

웹스토리지는 쿠키보다 낫음.

 

HTML5 이전엔 서버 요청 응용프로그램 데이터를 쿠키에 저장해야 했으나, 
HTML5 이후엔 웹 스토리지 이용해 웹 사이트 성능에 영향 안 주고 대량 데이터를 로컬에 안전하게 저장 가능.

 

1-1.

쿠키와 달리, 웹스토리지 용량 한도는 훨씬 큼. (최소 5MB 이상).

1-2.

웹스토리지에 담긴 정보는 서버로 절대로 전송 안 됨.

 

2.

웹 저장소는 원본(도메인 및 프로토콜별)로 제공됨.
한 출처의 모든 페이지는 동일한 데이터를 저장하고 접근 가능.

 

3.

IE8 이상 주요 최신 브라우저 모두 지원.

 

 

Web Storage 객체종류

 

window.localStorage

소멸 기간 없이 데이터 저장 - 영구저장

 

window.sessionStorage

한 세션에 대한 데이터 저장. (브라우저 탭 닫으면 데이터 손실) - 임시저장

 

 

localStorage 예제 - 클릭횟수 구하기

 

<script>

function homzzang() {

  if (typeof(Storage) !== "undefined") {

    if (localStorage.clickcount) {

      localStorage.clickcount = Number(localStorage.clickcount)+1;

    } else {

      localStorage.clickcount = 1;

    }

    document.getElementById("result").innerHTML = localStorage.clickcount + " 번 클릭";

  } else {

    document.getElementById("result").innerHTML = "web storage 안 되는 브라우저는 개나 줘버려.";

  }

}

</script>


<button onclick="homzzang()" type="button">Click me!</button>

<div id="result"></div>

 

결과보기

 

sessionStorage 예제 - 클릭횟수 구하기 (현재세션에서)

 

<script>

function homzzang() {

  if (typeof(Storage) !== "undefined") {

    if (sessionStorage.clickcount) {

      sessionStorage.clickcount = Number(sessionStorage.clickcount)+1;

    } else {

      sessionStorage.clickcount = 1;

    }

    document.getElementById("result").innerHTML = sessionStorage.clickcount + " 번 클릭 (현재세션상태에서)";

  } else {

    document.getElementById("result").innerHTML = "web storage 안 되는 브라우저는 개나 줘버려";

  }

}

</script>


<p><button onclick="homzzang()" type="button">클릭</button></p>

<div id="result"></div>

 

결과보기


 


분류 제목
attribute HTML - kind 속성 - 텍스트트랙 종류 지정 (= kind속성 = 카인드속성) ※ 트랙종류
attribute HTML - title 속성 ★ - 요소애 대한 추가 정보 지정 (= title속성 = 타이틀속성)
attribute HTML - enctype 속성 - 폼데이터 인코딩방식 지정 (= enctype속성 = 인크타입속성/잉크타입…
attribute HTML - onsubmit 속성 ★ - 폼데이터 제출 시 실행 (= onsubmit속성 = 온서브미트속성/…
attribute HTML - onseeked 속성 - (오디오/비디오) 재생위치 변경 종료 시, 실행할 코드 지정. (= o…
form HTML - <input type="radio"> 태그 - 오직 1개의 요소만 선택 (= 인풋라디오타입/라디…
attribute HTML - ondragleave 속성 - 드래그 한 요소가 드롭박스 이탈 시 실행 (= ondragleav…
attribute HTML - ononline 속성 - 브라우저가 온라인으로 작동할 때 실행 (= ononline속성 = 온온…
attribute HTML - onemptied 속성 - 미디어 소스가 비어있거나 삭제된 경우에 실행 (= onemptied속…
attribute HTML - src 속성 ★ - 외부 리소스 URL주소 지정 (= src속성 = 에스알시속성/에스알씨속성/소…
attribute HTML - cellspacing 속성 - 테이블셀간의 간격 지정 (= cellspacing속성 = 셀스페이…
attribute HTML - onabort 속성 - 미디어 파일 로드 중단 이벤트 발생 시 실행할 코드 정의 (= onabo…
attribute HTML - srclang 속성 - 트랙태그 소스의 언어코드 지정 (= srclang속성 = 에스알시랭속성/…
attribute HTML - onpageshow 속성 - 사용자가 웹페이지 탐색 시 실행 (= onpageshow속성 = 온…
attribute HTML - form 속성 - 해당 요소가 속하는 폼요소 지정 (= form속성 = 폼속성) ※ 폼 밖에 위…
form HTML - <input type="hidden"> 태그 - 숨겨진 입력 필드 지정 (= 사용자 몰래 입력값…
attribute HTML - label 속성 - 요소에 대한 꼬리표 지정 (= label속성 = 레이블속성/라벨속성)
attribute HTML - headers 속성 - 관련된 헤더셀ID 목록 지정 (= headers속성 = 헤더스속성/헤더즈…
attribute HTML - onstalled 속성 - (오디오/비디오) 이용불가 (=사용불가) 시 실행 (= onstall…
form HTML - <input type="number"> 태그 - 숫자 입력 (= 인풋넘버타이/넘버타입인풋/넘버인…
2/18
목록
찾아주셔서 감사합니다. Since 2012