레이어 팝엄 관련 질문 드립니다.
본문
안녕하세요 현제 레이어 팝업은 만들었는데요 문제는
기존 코드가 좀 어렵게 되어 있다 보니 제가 분석도 어렵고 응용하기가 좀 어려워서요
작업 하고 있는 사이트는 https://yscl.homweb.co.kr/page/page02_01_03.php 여기 인데요
맵 지도 옆에 이름을 클릭 하면 레이어 팝업으로 나오게 하고 싶은서요
아래 코드가 팝업이 뜨는 코드 인데요 이것을 적용을 했더니 뜨지 않아서
<a href="/source/korean/profile/profile.php?daesu=<?=$row['f_daesu']?>&f_code=<?=$row['f_code']?>" id="btn_profile_272" onclick="window.open(this.href,'profile','width=430,height=530,scrollbars=yes'); return false;" title="<?=$name?> 의원 프로필(새창)">의원 프로필</a>
위 코드는 그냥 위 경로에서 불러와서 팝업으로 띄우게 되어 있는 것이고
아래 코드는 뭐 여러가지가 있다 보니 제가 적용 하기가 좀 어렵네요
위 코드로 적용을 하기 위래서는 어떻게 해야 하는지 궁금 합니다.
https://yscl.homweb.co.kr/page/page02_01_02.php 여기서 의원 프로픽을 클릭 하면 팝업이 뜨는데
수정 할 페이지에서는 https://yscl.homweb.co.kr/page/page02_01_03.php 말 그대로 레이어 팝업으로 떠서 이것을 그냥 팝업을 뜨게 하고 싶은 거에요 죄송합니다 제가 말 주변이 없다 보니 좀 설명하기가 어렵네요
다시 핵심은 레이어 팝업을 그냥 팝업으로 나오게 하고 싶은 것입니다.
<a href="#eaa0689a095d4394a05fb51b84b0175a47f68221261377e4829444cbfcae23ca"
onclick="profile_show( this);"
id="btn_profileeaa0689a095d4394a05fb51b84b0175a47f68221261377e4829444cbfcae23ca"
data-key="eaa0689a095d4394a05fb51b84b0175a47f68221261377e4829444cbfcae23ca"
data-name2="<?=$name2?>"
data-party="<?=$row2['f_party']?>"
data-district="<?=$row2['f_district']?> <?=$dist?>"
data-phone2="<?=$row2['f_phone2']?>"
data-email="<?=$row2['f_email']?>"
data-pic="<?php echo $img; ?>"
data-career="<?=htmlspecialchars( trim( $row2['f_career']))?>"
title="의원 프로필"
class="btn_profile start" ><?=$row2['f_name']?>
</a>
답변 1
다음은 window.open 형태로 동작하도록 하는 임시코드 입니다.
<script>
var fn_profile_show = profile_show;
profile_show = function (e){
$(e).removeClass('btn_profile');
fn_profile_show(e);
$('#pop_profile_img').attr( 'src', location.origin + $(e).data('pic') );
var wo = window.open('about:blank','profile','width=430,height=530,scrollbars=yes');
var styles = '';
for (var i = 0, i_len = document.getElementsByTagName('link').length; i < i_len; i++) {
styles += document.getElementsByTagName('link')[i].outerHTML;
}
for (var i = 0, i_len = document.getElementsByTagName('style').length; i < i_len; i++) {
styles += document.getElementsByTagName('style')[i].outerHTML;
}
wo.document.write('<html><head></head><body></body></html>');
wo.document.getElementsByTagName('head')[0].innerHTML = document.getElementsByTagName('head')[0].innerHTML;
var tags = $('#' + $(e).data('key')).prop('outerHTML');
tags = tags.replace('pop_profile', 'pop_profile on');
tags = tags.replace(/void\('close'\)/g, 'void(close())');
wo.document.body.innerHTML = styles + tags;
}
</script>
답변을 작성하시기 전에 로그인 해주세요.