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

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

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

여기서는 두군데다가 스크립트를 넣어줘야 합니다.
일단 새창으로 띄워질 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

번호 제목 글쓴이 날짜 조회
2955 # 제목을 입력하는 곳 (넓은 사이즈) M 최고의하루 01.03 2937
2954 Editplus v3.0 (문서 편집기) M 최고의하루 01.03 2314
2953 [ JSP ] 브라우저 인코딩이 자동으로 한글이 안되는 경우 해결법 99 단국강토 01.02 2760
2952 [ JS ] 버튼을 이용한 이미지 넘기기 ( 이미지 리스트 ) 99 단국강토 01.02 3579
2951 [AJAX] 자바스크립트에서 XML 파일 읽어 오기 99 단국강토 12.30 2412
2950 [AJAX] DOMDocument 에서 selectSingleNode 을 이용한 XML 노드 (Node) 찾기 99 단국강토 12.30 2531
2949 [ JS , AJAX ] DOM 크로스브라우징 : 원하는 노드 찾기 [ createDocument , DOMDocument ] M 최고의하루 12.26 2561
2948 외부링크 금지하는 방법 M 최고의하루 12.26 2508
열람중 오늘 하루 창 열지 않기 M 최고의하루 12.24 2429
2946 DLL화일 레지스트리에 등록 또는 삭제 하기 M 최고의하루 12.24 2221
2945 팝업창 닫고 프레임이 있는 부모창에서 원하는 페이지로 이동하기 M 최고의하루 12.23 3194
2944 [펌] 제11강 - ADO(Active Database Object) - Database Access Component Cobol vs C#-2 M 최고의하루 12.23 2378
2943 [펌] 제11강 - ADO(Active Database Object) - Database Access Component Cobol vs C#-1 M 최고의하루 12.23 3075
2942 [펌] 제12강 - 방명록 만들기 I M 최고의하루 12.23 3056
2941 [펌] 제13강 - 방명록 만들기 II M 최고의하루 12.20 2114
2940 [펌] 제14강 - 방명록 만들기 III M 최고의하루 12.20 2506
2939 [펌] 제15강 - 방명록 만들기 IV M 최고의하루 12.19 2214
2938 [펌] 제16강 - 방명록 만들기 V M 최고의하루 12.19 2107
2937 제17강 - 방명록 만들기 VI M 최고의하루 12.18 2937
2936 [펌] 제18강 - 방명록 만들기 VII M 최고의하루 12.04 2563
2935 아작스관련 코드 링크들 M 최고의하루 12.04 2401
2934 UTF-8 기준, 한글을 초성,중성,종성으로 분리하기 13 김영철 01.14 3454
2933 APM에서 utf-8 구현 방법 13 김영철 01.14 2977
2932 utf-8 사용시 설정 - db의 입출력을 완벽하게 utf-8 13 김영철 01.14 2266
2931 PHP로 작동하는 RSS 읽는 함수 13 김영철 01.14 2408
2930 EditPlus V2.30 되면서 눈에띄는 달라진점 7가지 13 김영철 01.14 2859
2929 오라클 캐릭터 셋 변경 M 최고의하루 01.12 3038
2928 체크박스 배열을 edit 수정페이지로 불러오기 M 최고의하루 01.12 2505
2927 config 배열. 99 단국강토 01.08 2310
2926 Rewrite 99 단국강토 01.08 2118
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취