HTML과 JAVA
글 수 77
페이지가 로딩되면서 새창이 뜨는 공지사항이나 이벤트창에서 이런거 많이보셨을겁니다.
오늘 하루동안 창열지 않기
이건 사용자가 이 체크박스에 체크를 하면 그 쿠키를 읽어서 하루동안은 다시 새창을 열리지 않게 하는거죠. 계속해서 공지창이 뜨면 사실 조금 짜증이 나거든요.
아무리 광고도 좋지만 이정도의 예의를 갖춰준다면 사용자가 더 기쁘겠죠?
여기서는 두군데다가 스크립트를 넣어줘야 합니다.
일단 새창으로 띄워질 htm파일에는 체크를 하면 창이 저절로 닫히게하는스크립트를 넣어줘야하구요.
그리고 새창을 띄울파일에는 그 창이 사용자가 체크를 했는지 안했는지,했다면 하루가 지났는지를 체크하는 스크립트를 넣어줘야 합니다.
① 새창을 띄우는 파일(index.htm)
엄마파일이라고해두죠.보통은 그 계정에 들어가자마자 새창이 뜨자나요.
거기서의 index파일입니다.
여기에는 사용자가 체크를 했는지 안했는지,했다면 하루가 지났는지를 체크하는 스크립트가 들어갑니다.
<head>와 </head>사이에 넣어주세요.
<script language="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("memo");
if (eventCookie != "no")
window.open('popup.htm','_blank','width=350,height=400,top=50,left=150');
//팝업창의 주소, 같은 도메인에 있어야 한다.
}
openMsgBox();
</SCRIPT>
popup.htm는 새창으로 띄울 파일경로
_blank 는 새창이란 뜻
width=350,height=400 는새창의 가로세로 크기
top=50,left=150 새창의 띄워질 위치
② 새창으로 열려질 파일 (popup.htm)
새창으로 열려질 파일안에다가 써줘야하는스크립트입니다.
여기에서는 체크를 하면 창이 저절로 닫히게하는스크립트를 넣어줍니다.
<head>와 </head>사이에 넣어주세요.
<script language="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.lehit.event.checked )
setCookie("memo", "no" , 1);
}
</script>
memo는 name이구요.
1은 기한(expiredays)을 말하는 것으로 하루를 의미합니다. 원하시는 날짜만큼 써주면 되겠죠?
lehit은 Form Name입니다. (아래쪽에 나옵니다. 체크박스)
event은 Input Name입니다. (아래쪽에 나옵니다. 체크박스)
그리고 <body>안에다가 onunload="closeWin()"라고 써주세요.
<body onunload="closeWin()">
자 그다음엔 체크박스에다가 이렇게 써주세요.
<form name="lehit">
<td align="center" valign="bottom">
<input type="checkbox" name="event" onClick="check_window();" >
이후로 페이지를 열지 않기 <a href="javascript:self.close();"><img src="이미지경로" width="이미지가로크기" height="이미지세로크기" border="0"></a>
</td>
</form>
출처 : goccm.com
오늘 하루동안 창열지 않기
이건 사용자가 이 체크박스에 체크를 하면 그 쿠키를 읽어서 하루동안은 다시 새창을 열리지 않게 하는거죠. 계속해서 공지창이 뜨면 사실 조금 짜증이 나거든요.
아무리 광고도 좋지만 이정도의 예의를 갖춰준다면 사용자가 더 기쁘겠죠?
여기서는 두군데다가 스크립트를 넣어줘야 합니다.
일단 새창으로 띄워질 htm파일에는 체크를 하면 창이 저절로 닫히게하는스크립트를 넣어줘야하구요.
그리고 새창을 띄울파일에는 그 창이 사용자가 체크를 했는지 안했는지,했다면 하루가 지났는지를 체크하는 스크립트를 넣어줘야 합니다.
① 새창을 띄우는 파일(index.htm)
엄마파일이라고해두죠.보통은 그 계정에 들어가자마자 새창이 뜨자나요.
거기서의 index파일입니다.
여기에는 사용자가 체크를 했는지 안했는지,했다면 하루가 지났는지를 체크하는 스크립트가 들어갑니다.
<head>와 </head>사이에 넣어주세요.
<script language="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("memo");
if (eventCookie != "no")
window.open('popup.htm','_blank','width=350,height=400,top=50,left=150');
//팝업창의 주소, 같은 도메인에 있어야 한다.
}
openMsgBox();
</SCRIPT>
popup.htm는 새창으로 띄울 파일경로
_blank 는 새창이란 뜻
width=350,height=400 는새창의 가로세로 크기
top=50,left=150 새창의 띄워질 위치
② 새창으로 열려질 파일 (popup.htm)
새창으로 열려질 파일안에다가 써줘야하는스크립트입니다.
여기에서는 체크를 하면 창이 저절로 닫히게하는스크립트를 넣어줍니다.
<head>와 </head>사이에 넣어주세요.
<script language="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.lehit.event.checked )
setCookie("memo", "no" , 1);
}
</script>
memo는 name이구요.
1은 기한(expiredays)을 말하는 것으로 하루를 의미합니다. 원하시는 날짜만큼 써주면 되겠죠?
lehit은 Form Name입니다. (아래쪽에 나옵니다. 체크박스)
event은 Input Name입니다. (아래쪽에 나옵니다. 체크박스)
그리고 <body>안에다가 onunload="closeWin()"라고 써주세요.
<body onunload="closeWin()">
자 그다음엔 체크박스에다가 이렇게 써주세요.
<form name="lehit">
<td align="center" valign="bottom">
<input type="checkbox" name="event" onClick="check_window();" >
이후로 페이지를 열지 않기 <a href="javascript:self.close();"><img src="이미지경로" width="이미지가로크기" height="이미지세로크기" border="0"></a>
</td>
</form>
출처 : goccm.com

안녕하세요 지엠비비에스의 주인장 랑이입니다...!!
언제나 여러분들의 소나무가 될수 있도록 노력 하겠습니다.
삶을 두려워 하지 말라. 삶은 살아볼만한 가치가 있는것이라고 믿어라.
그믿음이 가치 있는 삶을 창조하도록 도와줄 것이다. - 로버트 H.슐러
언제나 여러분들의 소나무가 될수 있도록 노력 하겠습니다.
삶을 두려워 하지 말라. 삶은 살아볼만한 가치가 있는것이라고 믿어라.
그믿음이 가치 있는 삶을 창조하도록 도와줄 것이다. - 로버트 H.슐러




