테스트 사이트 - 개발 중인 베타 버전입니다

자바스크립트 오늘하루그만보기 레이어팝업창 만드는데 잘안되네요 ㅠ 채택완료

파로소 10년 전 조회 8,576

</p><p><script type="text/javascript">
</script>
var cokarr = cookiedata.split(";");
var strcok1 = "";
var strcok2 = "";
for(var i=0; i<cokarr.length; i++)
{
 strcok1 = cokarr[0].split("=");
 strcok2 = cokarr[1].split("=");
}</p><p>var divId = strcok2[0];
var timeOut = strcok2[1];
var objDiv = document.getElementById(divId);</p><p>var nowTime = new Date();</p><p> </p><p><strong><span style="color: rgb(255, 0, 0); font-size: 24pt;">alert(objDiv);</span></strong></p><p>
if(nowTime.toGMTString() < timeOut){
 objDiv.style.display = "none";
}else{
 objDiv.style.display = "none";
}
</script></p><p><!-- 팝업레이어 시작 { -->
<div id="hd_pops_0" class="hd_pops" style="top:10px;left:15">
    <div class="hd_pops_con" style="width:450px;height:400px">
        팝업 레이어 테스트입니다.
  

 </div>
    <div class="hd_pops_footer">
        <button class="hd_pops_reject hd_pops_0 24"><strong>24</strong>시간 동안 다시 열람하지 않습니다.</button>
        <button class="hd_pops_close hd_pops_0">닫기</button>
    </div>
</div></p><p><script>
$(function() {
    $(".hd_pops_reject").click(function() {
        var id = $(this).attr('class').split(' ');
        var ck_name = id[1];
        var exp_time = parseInt(id[2]);
        $("#"+id[1]).css("display", "none");
        setCookie(ck_name, 1, exp_time);
    });
    $('.hd_pops_close').click(function() {
        var idb = $(this).attr('class').split(' ');
        $('#'+idb[1]).css('display','none');
    });
});</p><p>function setCookie(name, value, expirehours) {
 var todayDate = new Date();
 todayDate.setHours(expirehours);
 document.cookie = name + "=" + todayDate.toGMTString() + "; expires=" + todayDate.toGMTString() + ";"
}
</script>​</p><p>

 

 

다른부분은 거진 다 했는데 ㅠ 쿠키넘기고 받고 다 확인했거든요.

근대 문제가 위에 16번줄 alert(objDiv); 저부분에서 받는값이 계속 null이 되네요..

바로 위에 쿠키 그리고 split로 짤라서 가져온 변수 divId값에도 div값 이 들어있는데..

왜그럴까요?

고수분들의 조언 부탁드립니다. ㅠ

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
s
10년 전

divId 변수 값에 원하는 엘리먼트 오브젝트가 들어있는듯 합니다.

document.getElementById("엘리먼트ID") 여기서 "​엘리먼트ID"는 텍스트 값이어야 합니다. 

var objDiv = divId ;  

이렇게 넣어보세요.   

만약 되지 않으신다면 콘솔에서 document.getElementById(divId) 값을 확인해 보시는게 좋겠네요. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

파로소
10년 전
감사합니다. ㅎㅎ 덕분에 해결했네요.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인