if (navigator.platform) {
if (platFormFilter.indexOf(navigator.platform.toLowerCase() ) < 0 ) {
//alert(“mobile ����”);
clientPlatform = “MOB”;
} else {
//alert(“pc ����”);
clientPlatform = “PC”;
}
}
$(document).ready(function () {
gKakao.init();
});
// īī�����̾�
var gKakao = {
initialized : false,
/**
* �ʱ�ȭ
*/
init : function () {
var kakao_iframe;
// PC ����
if (clientPlatform=="PC") {
kakao_iframe = $('<div id="kakaoPayAreaNew" style="display:none" ><iframe name="kakaoPayiFrame" id="kakaoPayiFrame" src="" scrolling="no" frameborder="0" width="450" height="500" ></iframe></div>'); // PC
kakao_iframe.appendTo('body');
}
// Mobile ����
else {
kakao_iframe = $('<div id="kakaoPayAreaNew" data-role="page" class="popWrapper __layer_content__" style="display: none;"><div class="popheader"><a href="#none" class="closeBtn" onclick="javascript:gKakao.close(); return false;"></a></div><iframe name="kakaoPayiFrame" id="kakaoPayiFrame" style="display:block; width:100vw; height:100vh;" ></iframe></div>'); // MOB
//kakao_iframe.appendTo('header.lyheader');
kakao_iframe.appendTo('header');
//$('#__step04OTAProposal').appendTo($('header.lyheader'));
//$('#kakaoPayAreaNew #payForm').remove();
//$(spayForm).appendTo($('#kakaoPayAreaNew'));
}
if (!gKakao.initialized) {
gKakao.initialized = true;
}
},
/**
* ����
*/
show : function () {
gLayer.show($('#kakaoPayAreaNew'));
},
/**
* ���
*/
close : function () {
gLayer.hide($('#kakaoPayAreaNew'));
}
};
var kakaoAPI = {
callback : undefined,
kakaoAPI : function (inputData, callback) {
kakaoAPI.callback = callback;
kakaoResult = {}; // ��� ���� �ʱ�ȭ
kakaoTid = ""; // tid �ʱ�ȭ
var sendData = {
"cmd" : '',// īī�� APIȣ��
"xrw_mode" : "",
"kakaoRequestType" : kakaoRequestType, // ��ûŸ��
"planNo" : planNo, // �����ȣ
"clientDeviceType" : clientDeviceType, // PC MOB
"GoodsName" : good_name, // ��ǰ��
"Amt" : good_mny,
"approval_url" : approval_url,
"cancel_url" : cancel_url,
"fail_url" : fail_url,
"location_protocol" : location_protocol
}
$.ajax({
async: true,
type: 'POST',
url: '',
data:sendData,
success: function( data ) {
var strData = fn_filteringSubmitString(JSON.stringify(data));
data = JSON.parse(strData);
// 파싱 결과 1차 필터링 진행
var next_redirect_pc_url = data.root.messageData.retriveData.next_redirect_pc_url; // PC���� URL
var next_redirect_mobile_url = data.root.messageData.retriveData.next_redirect_mobile_url; // ����� web����
var next_redirect_app_url = data.root.messageData.retriveData.next_redirect_app_url; // �� ����
var android_app_scheme = data.root.messageData.retriveData.android_app_scheme; // �ȵ���̵� �۽�Ŵ
var ios_app_scheme = data.root.messageData.retriveData.ios_app_scheme; // iOS �۽�Ŵ
var kakaoParam;
try{
// īī�� �Ķ����
kakaoParam =
"/third/kakao/kakaoPay.jsp?kakaoReqType=kakaoOpen"
+"&next_redirect_pc_url="+next_redirect_pc_url
+"&next_redirect_mobile_url="+next_redirect_mobile_url
+"&next_redirect_app_url="+next_redirect_app_url
+"&android_app_scheme="+android_app_scheme
+"&ios_app_scheme="+ios_app_scheme
+"&clientDeviceType="+clientPlatform;
kakaoTid = data.root.messageData.retriveData.tid;
$('input[name=tid]').val(data.root.messageData.retriveData.tid); // �ŷ���ȣ (�� ���� �߿���. �����غ��û ��� �Ƽ� ȭ�鿡�� ������ ���� ���߿� ���� �� �� pg_token�� tid �Ѱž���)
if (clientPlatform=="PC") {
// ���̾� �߾�����
var kakao_width = $("#kakaoPayAreaNew").width();
var kakao_height = $("#kakaoPayAreaNew").height();
$("#kakaoPayAreaNew").css({'left':( $(window).width() - kakao_width ) / 2, 'top' : ( $(window).height() - kakao_height ) / 2, 'position':'fixed' });
}
gKakao.show(); // ���̾�
$("#kakaoPayiFrame").attr("src", kakaoParam); // īī��ȣ��
//document.getElementById("kakaoPayiFrame").src = kakaoParam;
} catch(e){
alert(e);
}
},
error: function(e) {
alert("서버 에러가 발생하였습니다.\n" + actionUrl + "\n"+e.status);
}
});
}
};
kakaoAPI 를 상기와 같이 사용하고 있습니다. 문의할 사항은 pc 버젼에서 카카오페이 연동은 QR코드 창이 정상 호출되어 카카오페이 테스트결제까지 이어지나 mobile의 경우 카카오페이를 열지를 못하고 있습니다.
pc와 mobile의 차이는 kakao_iframe.appendTo(‘body’); 와 kakao_iframe.appendTo(‘header’); 에 각각 kakaoParam 을 $("#kakaoPayiFrame").attr(“src”, kakaoParam); 으로 입력해주고 있습니다. 모바일에서 카카오페이 결제화면이 왜 안열리는 걸까요?