샘플 코드
- 인쇄
샘플 코드
- 인쇄
기사 요약
이 요약이 도움이 되었나요?
의견을 보내 주셔서 감사합니다.
Shoplive Player 설치 예시
messageCallback
을 사용하여 쿠폰 다운로드, 상품 클릭, 로그인이 필요한 기능 접근 이벤트가 발생하였을 시, 수행 동작 재정의 하고, 데스크탑과 모바일 사이즈에 모두 적용되는 스타일을 적용한 Shoplive Player를 표시합니다.
<html>
<head>
<title>Shoplive - Simple player example</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, viewport-fit=cover, shrink-to-fit=no" />
<script type="text/javascript" src="https://static.shoplive.cloud/shoplive.js"></script>
<script>
let messageCallback = {
DOWNLOAD_COUPON: function (payload) {
// get Current Player
var player = cloud.shoplive.getPlayer();
// if, ONAIR player
if (
player.campaignStatus === "ONAIR" &&
player.campaignKey === payload.campaignKey
) {
// copy to clipboard
var textarea = document.createElement("textarea");
document.body.appendChild(textarea);
textarea.value = payload.coupon;
textarea.select();
document.execCommand("copy");
document.body.removeChild(textarea);
// Show Dialog
player.sendMessage("showDialog", {
title: "Copy to clipboard completed.",
message: payload.coupon,
});
}
},
CLICK_PRODUCT: function (payload) {
// 클릭한 상품 URL에 새로운 파라미터를 추가할 수 있습니다.
var url = payload.url + "¶meter=" +"{your_parameter}";
// 현재 창에서 상품 페이지로 이동합니다.
location.href = url;
},
LOGIN_REQUIRED: function (payload) {
alert("LOGIN_REQUIRED");
location.href = "YOUR_LOGIN_PAGE_URL";
},
};
cloud.shoplive.init({
accessKey: "{YOUR_ACCESS_KEY}",
messageCallback: messageCallback,
});
let userId = "USER_ID";
let userName = "USER_NAME";
if (userId) {
cloud.shoplive.setUserObject({ userId: userId, userName: userName });
}
</script>
<style>
html,
body {
margin: 0;
padding: 0;
background-color: #333;
}
#shoplive-player {
max-width: calc(100vh / 16 * 9 - 2px);
margin: auto;
}
@media screen and (max-width: 480px) {
#shoplive-player {
max-width: 100%;
}
}
</style>
</head>
<body>
<div id="shoplive-player"></div>
<script defer>
cloud.shoplive.setPlayer("shoplive-player", { campaignKey: "YOUR_CAMPAIGN_KEY" });
</script>
</body>
</html>