[PHP + jQuery] 레이어 팝업 관리
거창하게 팝업관리 시스템이라고 하고 싶었으나 그리 대단한 것은 아니기 때문에 그냥.. 팝업 관리를 좀 더
편하게 하고 싶어서 시간이 좀 있는 틈에 하나 만들었다. 예전에 다른 사이트 작업하면서 기본 개념을 이미
생각을 했던 부분이라서 이번에는 기능 추가에 좀 더 중점을 둬서 작업을 했다. jQuery도 쓰고 있으니까 이걸
활용해서 하면 좋을 것 같은 생각이 들었기 때문이다.
구현하라고 했던 것은 DB에 팝업관련 내용을 저장하고 페이지에서 불러와서 자동으로 팝업을 보여주는 것이다.
레이어를 이용한 팝업의 경우 위치를 지정하는 것이 애매한 부분인데 이 부분은 브라우저 크기에 상관없이 어떤
기준 점을 잡아서 레이어 위치를 바꿀 수 있도록 했다. 그리고 이미지맵을 사용할 경우도 고려해서 작업을 했다.
기본적인 팝업의 모양은 이렇게 생겼다. 하루동안 열지 않기 부분에서 일을 선택할 수 있게 할까도 생각했지만
오늘은 너무 귀찮았기 때문에 그냥 넘겨버리고 나중에 시간이 나거나 심심하면 작업을 해볼까 싶기도 하다. ㅎㅎ
이제 이 기능을 구현한 코드를 정리해볼까 한다. DB구조도 함께 올릴텐니 적당히 수정해서 사용하면 좋을 것 같다.
?>
사이트가 그누보드기반으로 작업 중이기 때문에 DB관련 함수들은 보드 자체 함수를 그대로 사용했다.
팝업 이미지와 내용을 입력하는 폼은 따로 올리지 않겠다. 폼 작성하는 것이 어렵지는 않을 것이라 생각한다.
만약 이 코드를 사용한다면 수정해야할 부분이 var position = $(‘img#GoHome’).position(); 라는 부분에서
기준이 되는 엘리먼트 여기서는 img#GoHome 이다. 이 부분을 수정하면 되고 또한 쿠키 이름도 수정하면 된다.
만약 쿠키 이름을 수정했을 경우 자바스크립트에서 var layer = name.replace(“PopUpCookies_”, “”); 부분도
함께 수정해야한다. 쿠키이름에서 팝업 레이어 ID를 얻는 부분으로 문자열 치한 부분이 들어가 있기 때문이다.
그리고 아래 이미지는 팝업을 등록하는 Form화면이다. 디자인은 고려치 않고 그냥 편하게 만들었을 뿐이다.