강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

오늘 하루 창 열지 않기
작성자 : M 최고의하루
등록날짜 : 2008.12.24 14:01
3,302
페이지가 로딩되면서 새창이 뜨는 공지사항이나 이벤트창에서 이런거 많이보셨을겁니다.
오늘 하루동안 창열지 않기

이건 사용자가 이 체크박스에 체크를 하면 그 쿠키를 읽어서 하루동안은 다시 새창을 열리지 않게 하는거죠. 계속해서 공지창이 뜨면 사실 조금 짜증이 나거든요.
아무리 광고도 좋지만 이정도의 예의를 갖춰준다면 사용자가 더 기쁘겠죠?

여기서는 두군데다가 스크립트를 넣어줘야 합니다.
일단 새창으로 띄워질 htm파일에는 체크를 하면 창이 저절로 닫히게하는스크립트를 넣어줘야하구요.
그리고 새창을 띄울파일에는 그 창이 사용자가 체크를 했는지 안했는지,했다면 하루가 지났는지를 체크하는 스크립트를 넣어줘야 합니다.

① 새창을 띄우는 파일(index.htm)
엄마파일이라고해두죠.보통은 그 계정에 들어가자마자 새창이 뜨자나요.
거기서의 index파일입니다.
여기에는 사용자가 체크를 했는지 안했는지,했다면 하루가 지났는지를 체크하는 스크립트가 들어갑니다.

<head>와 </head>사이에 넣어주세요.

<script language="JavaScript" type="text/JavaScript">
  <!--
  function getCookie(name) {
    var Found = false
    var start, end
    var i = 0

    // cookie 문자열 전체를 검색
    while(i <= document.cookie.length) {
      start = i
      end = start + name.length
      // name과 동일한 문자가 있다면
      if(document.cookie.substring(start, end) == name) {
        Found = true
        break
      }
      i++
    }

    // name 문자열을 cookie에서 찾았다면
    if(Found == true) {
      start = end + 1
      end = document.cookie.indexOf(";", start)
      // 마지막 부분이라는 것을 의미(마지막에는 ";"가 없다)
      if(end < start)
      end = document.cookie.length
      // name에 해당하는 value값을 추출하여 리턴한다.
      return document.cookie.substring(start, end)
    }
    // 찾지 못했다면
    return ""
  }

  function openMsgBox() {
    var eventCookie=getCookie("cook_name");   // cook_name 은 임의로 꼭 변경하세요.
    if (eventCookie != "no")
    window.open('popup.html','_blank','width=400,height=450,top=50,left=100');
    //팝업창의 주소, 같은 도메인에 있어야 한다.
  }
  openMsgBox();
-->
</SCRIPT>

popup.html은 새창으로 띄울 파일경로
_blank 는 새창이란 뜻
width=400,height=450 는새창의 가로세로 크기
top=50,left=100 새창의 띄워질 위치


② 새창으로 열려질 파일 (popup.html)
새창으로 열려질 파일안에다가 써줘야하는스크립트입니다.
여기에서는 체크를 하면 창이 저절로 닫히게하는스크립트를 넣어줍니다.

<head>와 </head>사이에 넣어주세요.

<script language="JavaScript" type="text/JavaScript">
  <!--
  function setCookie( name, value, expiredays ) {
    var todayDate = new Date();
    todayDate.setDate( todayDate.getDate() + expiredays );
    document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";"
  }
  function closeWin() {
    if ( document.checkClose.event.checked )
    setCookie("cook_name", "no" , 1);   // cook_name 은 위의 index와 같은 이름으로 변경
  }
  -->
</script>

cook_name은 쿠키 이름이구요, 위의 index에서 적은것과 같은 값을 써주세요.
1은 기한(expiredays)을 말하는 것으로 하루를 의미합니다. 원하시는 날짜만큼 써주면 되겠죠?
checkClose은 Form Name입니다. (아래쪽에 나옵니다. 체크박스)
event은 Input Name입니다. (아래쪽에 나옵니다. 체크박스)

그리고 <body>안에다가 onunload="closeWin()"라고 써주세요.

<body onunload="closeWin()">

자 그다음엔 체크박스에다가 이렇게 써주세요.
<form name="checkClose">
  <input type="checkbox" name="event" onClick="check_window();" >
  하루동안 이 창 띄우지 않음
  <a href="javascript:self.close();"><img src="이미지경로" width="이미지가로크기" height="이미지세로크기" border="0"></a>
</form>

창닫기 이미지 대신에 그냥 텍스트로 넣으셔도 됩니다.
이건 테스트하고 하루를 지나야 되는지 안되는지 알수 있어요.
하루동안 새창이 열리지말라고 했으니까요.

하루 이전에 팝업을 다시 보려면?
브라우저의 도구>옵션 에서 쿠키값을 삭제하면 다시 팝업을 볼수 있습니다.

 

 

강의원본 : 해피정닷컴 ( http://www.happyjung.com/zeroboard/zboard.php?id=lecture ) 

 

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
3015 APM에서 utf-8 구현 방법 13 김영철 01.14 2587
3014 utf-8 사용시 설정 - db의 입출력을 완벽하게 utf-8 13 김영철 01.14 2003
3013 PHP로 작동하는 RSS 읽는 함수 13 김영철 01.14 2078
3012 EditPlus V2.30 되면서 눈에띄는 달라진점 7가지 13 김영철 01.14 2350
3011 오라클 캐릭터 셋 변경 M 최고의하루 01.12 3460
3010 체크박스 배열을 edit 수정페이지로 불러오기 M 최고의하루 01.12 3800
3009 config 배열. 99 단국강토 01.08 2516
3008 Rewrite 99 단국강토 01.08 3111
3007 특정폴더에서 파일을 이미지파일을 들고와서 선택시..이미지 변환 99 단국강토 01.07 3060
3006 book_shop 99 단국강토 01.07 2945
3005 Sub와 Function 차이점 99 단국강토 01.06 1886
3004 PUTTY Telnet , SSH 접속 프로그램 99 단국강토 01.06 3754
3003 VBScript 온라인 도움말 Ver 5.5 99 단국강토 01.05 3004
3002 스마택 Ver 0.2 ( 소스 자동 정렬 프로그램 ) 99 단국강토 01.05 2204
3001 # 제목을 입력하는 곳 (넓은 사이즈) M 최고의하루 01.03 2166
3000 Editplus v3.0 (문서 편집기) M 최고의하루 01.03 3074
2999 [ JSP ] 브라우저 인코딩이 자동으로 한글이 안되는 경우 해결법 99 단국강토 01.02 2860
2998 [ JS ] 버튼을 이용한 이미지 넘기기 ( 이미지 리스트 ) 99 단국강토 01.02 2877
2997 [AJAX] 자바스크립트에서 XML 파일 읽어 오기 99 단국강토 12.30 3155
2996 [AJAX] DOMDocument 에서 selectSingleNode 을 이용한 XML 노드 (Node) 찾기 99 단국강토 12.30 2988
2995 [ JS , AJAX ] DOM 크로스브라우징 : 원하는 노드 찾기 [ createDocument , DOMDocument ] M 최고의하루 12.26 2487
2994 외부링크 금지하는 방법 M 최고의하루 12.26 2139
열람중 오늘 하루 창 열지 않기 M 최고의하루 12.24 3303
2992 DLL화일 레지스트리에 등록 또는 삭제 하기 M 최고의하루 12.24 3306
2991 팝업창 닫고 프레임이 있는 부모창에서 원하는 페이지로 이동하기 M 최고의하루 12.23 2913
2990 [펌] 제11강 - ADO(Active Database Object) - Database Access Component Cobol vs C#-2 M 최고의하루 12.23 2103
2989 [펌] 제11강 - ADO(Active Database Object) - Database Access Component Cobol vs C#-1 M 최고의하루 12.23 3978
2988 [펌] 제12강 - 방명록 만들기 I M 최고의하루 12.23 5324
2987 [펌] 제13강 - 방명록 만들기 II M 최고의하루 12.20 2384
2986 [펌] 제14강 - 방명록 만들기 III M 최고의하루 12.20 2497
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취