팝업창 질문 드립니다.

팝업창 질문 드립니다.

QA

팝업창 질문 드립니다.

답변 2

본문

안녕하세요. 원래는 팝업레이어에 24 시간동안 열지 않음 을 누르면

정상적으로 작동 했던거 같은데요. 클라우드플레어 적용한 이후로 작동하지 않는 것 같습니다.

관련 캐시쪽에 문제가 생긴건지 해결방법 찾고 싶네요.

 

팝업레이어 소스코드는 아래와 같습니다.

고수님들 도와주세요!

 

<!-- 팝업레이어 시작 { -->
<div id="wrapper_popup">
    <!-- <h2>팝업레이어 알림</h2> -->
 
<?php
$show_width_height = true;
for ($i=0; $nw=sql_fetch_array($result); $i++)
{
    if (G5_IS_MOBILE) { // 모바일에서
        $popup_x = 0;
        $popup_y = 110+$i*50;
    } else { // 데스크탑에서
        if ($show_width_height) {
            $popup_wh = ";width:{$nw['nw_width']}px"; // ;height:{$nw['nw_height']}px
        } else {
            $popup_wh = "";
        }
        $popup_x = $nw['nw_left'];
        $popup_y = $nw['nw_top'];
    }
    $color_no = 'c'.($i%5+1);
    $layer_id = 'hd_pops_'.($i+1);
    // 이미 체크 되었다면 Continue
    if ($_COOKIE["hd_pops_{$nw['nw_id']}"]) continue;
?>
 
    <div id="<?php echo $layer_id ?>" class="<?php echo $color_no ?> layer-shadow" style="top:<?php echo $popup_y?>px;left:<?php echo $popup_x?>px<?php echo $popup_wh?>">
        <?php echo conv_content($nw['nw_content'], 1); ?>
 
        <div class="b-area"><a href="#" class="hour-close <?php echo $layer_id ?> hd_pops_reject <?php echo $nw['nw_disable_hours']; ?>"><?php echo $nw['nw_disable_hours']; ?> 시간동안 열지 않음</a></div>
        <a href="#" onclick="closeLayer('<?php echo $layer_id ?>')"><img class="cancel" src="<?php echo G5_URL?>/img/cancel2.png"></a>
    </div>
<?php }
if ($i == 0) echo '<span class="sound_only">팝업레이어 알림이 없습니다.</span>';
?>
</div>
 
<script>
<!--
function dEI(elementID){
    return document.getElementById(elementID);
}
function openLayer(IdName, tpos, lpos){
    var pop = dEI(IdName);
    pop.style.top = tpos + "px";
    pop.style.left = lpos + "px";
    pop.style.display = "block";
}
function closeLayer( IdName ){
    var pop = dEI(IdName);
    pop.style.display = "none";
}
$(function() {
    $(".hd_pops_reject").click(function() {
        var id = $(this).attr('class').split(' ');
        var ck_name = id[1];
        var exp_time = parseInt(id[3]);
        $("#"+id[1]).css("display", "none");
        set_cookie(ck_name, 1, exp_time, g5_cookie_domain);
    });
});
//-->
</script>
<!-- } 팝업레이어 끝 -->

이 질문에 댓글 쓰기 :

답변 2

우선 클라우드 플레어를 주석처리 하거나 삭제 하신후 테스트 해보시고 정상 작동이 된다면

클라우드 플레어 설정 검토, 보안정책확인, 쿠키확인, 클라우드 플레어가 JavaScript 및 CSS 파일을 압축하거나 최적화 하는지 확인, 팝업레이어코드 수정 이런부분들을 검토후 테스트 해보시는게 좋을 것 같습니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 103
© SIRSOFT
현재 페이지 제일 처음으로