메뉴 건너뛰기

XE : Xpress Engine


XE에 대한 생각! XE에 대한 공감! - XE를 사용하는 다른 사람들과 의견을 나눌 수 있는 곳입니다. 많은 의견 공유로 더 좋은 XE를 만들어 주세요.


XE 사용팁

팝업창 띄우기

2008.03.16 13:53

[레벨:5]레망 조회 수:1287 추천:1

제로보드 4 를 쓸때부터 홈페이지에 적용해서 쓰던 팝업창 소스를 제로보드 XE에서 적용하여 현재 쓰고 있는 방법입니다.
소스는 예전부터 여기저기 블로그 등에서 공개되었던 것으로 지금 현재도 사용시에 별문제가 없어서 계속 쓰고 있습니다.
다른 방법도 있으리라 생각되지만.. 혹 필요한 분이 계실까봐 조금이나마 도움이 되시라 올려봅니다.

우선 자신이 사용하고 있는 레이아웃의 디렉토리 속에 있는 JS 디렉토리 속의 xe_official.js 파일을 불러와서 편집을 합니다.

기본 레이아웃을 쓴다고 전제를 하고.. 기존의 xe_official.js 파일의 마지막 부분에 빨간 글씨 부분을 추가합니다.

// Hide And Show Toggle
var cc=0
function hideShow(id) {
    if (cc==0) {
        cc=1
        document.getElementById(id).style.display="none";
    } else {
        cc=0
        document.getElementById(id).style.display="block";
    }
}

// Show And Hide Toggle
var cc=0
function showHide(id) {
    if (cc==0) {
        cc=1
        document.getElementById(id).style.display="block";
    } else {
        cc=0
        document.getElementById(id).style.display="none";
    }
}

// Local Navigation Toggle
function lnbToggle(id) {
 for(num=1; num<=3; num++) document.getElementById('D3MG'+num).style.display='none'; //D4MG1~D4MG3 까지 숨긴 다음
 document.getElementById(id).style.display='block'; //해당 ID만 보임
}

// IS
function chkIsKind(key, value) {
    showHide('selectOrder');
    xGetElementById('+ '+ 'search_target'+key).checked = true;
    xInnerHtml('search_target_label', value);
}

//팝업창
function getCookie(name)        //쿠키의 존재 유무를 알아내는 함수를 만듭니다.
{
        var nameOfCookie = name + "=";
        var x = 0;
        while(x <= document.cookie.length)
        {
                var y = (x + nameOfCookie.length);
                if(document.cookie.substring(x,y) == nameOfCookie)
                {
                        if((endOfCookie = document.cookie.indexOf(";",y)) == -1)
                                endOfCookie = document.cookie.length;
                        return unescape(document.cookie.substring(y,endOfCookie));
                }
                x = document.cookie.indexOf(" ",x) + 1;
                if(x == 0)
                        break;
        }
        return "";
}

if (getCookie("no_pop") != "ok" )        //no_pop 이라는 이름의 쿠키값이 ok 가 아니라면 다음의 새창 띄우기를 실행
{
 window.open("pop_up.htm","hi", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, width = 360 height = 320");       //파일 이름과 속성을 자신에 맞게 수정하면 됩니다.
}



제일 마지막 부분의 width=360 height=320 은 팝업창의 크기이니 원하는 크기로 지정하시면 됩니다.
추가가 되었으면 저장을 하시고 그 파일을 서버에 있는 같은 위치의 xe_official.js 파일에 덮어쓰기를 합니다. 


이제 팝업창을 제작합니다.
새파일을 만들어서 다음 빨간 글씨를 복사해서 붙여 넣은 다음 원하는 팝업창 메세지를 작성하시고
pop_up.htm으로 저장합니다. 그 pop_up.htm 파일을 서버에 zbxe 디렉토리에 업로드 시키면 됩니다.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>타이틀 제목</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<SCRIPT language="JavaScript">
<!--
function setCookie(name,value,expiredays)        //쿠키를 사용자에게 전달할 함수만들기
                                                                                        //setCookie(쿠키이름,쿠키값,쿠키만료시간)
    {
        var todayDate = new Date();
        todayDate.setDate(todayDate.getDate() + expiredays);
        document.cookie = name + "=" + escape(value) + "; path=/; expires=" + todayDate.toGMTString() + ";"
    }

function closeWin()
{
        if (cookie_form.chk.checked)        //체크박스에 체크되 있다면(폼 이름,체크박스 이름을 맞춰주세요.)
                        setCookie("no_pop","ok",1);        //쿠키이름은 no_pop,쿠키값은 ok,쿠키만료 기간은 1 일로 쿠키생성
                                                                                //혹시 no_pop 이라는 이름의 쿠키를 이미 사용하고 있다면 이름을 바꿔주세요

        self.close();        //창 닫기
}
// -->
</SCRIPT>
</head>

<body>
이곳에 원하시는 메세지를 편집해서 써 넣으시고..

     <form name = "cookie_form">
        <div align="right">
          <input type = "checkbox" name = "chk">
          <font size="2" face="굴림" color="#003366"><strong>오늘 다시 열지 않기</strong></font>
          <input type = "button" value = "Close" onClick = "closeWin();">
        </div>
      </form>
</body>
</html>




설명이 제대로 됐나 모르겠네요.
초보가 맨날 도움만 받다가 혹시나 필요하신분이 계신것 같아서 용기내어 올려봅니다.

번호 제목 글쓴이 날짜 조회 수
공지 질문은 묻고 답하기로~ TSCMD 2012.02.03 366
575 모든 사이트 운영하는분들 읽어보셨으면 좋겠네요 [6] file [레벨:4]NEARSTORY 2009.08.12 4812
574 에디터 컴포넌트 목록이 안 나올 때 해결법 [2] CNSMaker 2009.06.14 1175
573 파일첨부 안될때 [레벨:2]정박사닷컴 2009.09.24 3791
572 최근문서위젯의 제목을 누르면 게시판으로 이동 [3] file [레벨:3]CL님 2008.04.13 7743
571 게시판 확장변수 일괄 등록 하기 [2] file [레벨:0]2년후 2009.09.20 5716
570 네이버 실시간 인기검색어 가져오는 함수 [2] [레벨:2]Darby♡ 2009.09.14 4020
569 XE svn external link로 update하기 [7] [레벨:17]하늘03 2009.08.09 1301
568 좌측 메뉴 하단에 애드센스를 탑재해 보자! [5] [레벨:3]migojarad.myid.net 2007.08.13 10809
567 FTP로 지워지지 않는 파일 삭제방법. [9] [레벨:2]pakjce 2008.07.05 8204
566 호스팅 사용자님들 편한 툴입니다.웹에서 직접 zip파일 압축백업,압축풀기 [1] file [레벨:1]ranson 2009.09.12 4211
565 apmsetup5를 이용한 zbxe 설치 및 복구 [2] [레벨:2]무도사 2007.11.02 5947
564 알 수 없는 아이프레임이 심어졌을 때 (치명적인 바이러스) [6] [레벨:2]jjabez 2009.08.08 1198
563 제로보드 XE에서 강추하는 플래시 넣기 [12] [레벨:6]미오유 2007.09.19 14417
562 이것두 팁은 되려나...; xe 7대 구성 설치법임..ㅋ; [레벨:8]불패의초인 2009.09.11 3522
561 주민등록 입력 폼 1.2.0 [55] file [레벨:6]개돌 2009.04.10 1210
560 잦은 등급변경으로, 회원 등급이 엉켰을 경우 해결방법. [레벨:3]NZ448 2009.09.10 3349
559 http://www.도메인주소/~as/xe/ 로 로그인 접속후~ [3] [레벨:1]wjnam 2009.09.07 4498
» 팝업창 띄우기 [16] [레벨:5]레망 2008.03.16 1287
557 아이디/비밀번호 찾기 메일안올때 확인사항 (리눅스) [1] [레벨:2]이영길 2008.09.29 3726
556 [수정] 쉽게 간단하게(?) 플래시 그래프를 게시판에 넣어 보세요 ^^ [3] [레벨:4]상오기 2009.08.27 4545