Notice
Recent Posts
Recent Comments
Link
투케이2K
542. (javaScript) [간단 소스] 자바스크립트 sweetAlert 및 qrcode 라이브러리 사용해 QR 코드 표시 팝업창 생성 수행 본문
JavaScript
542. (javaScript) [간단 소스] 자바스크립트 sweetAlert 및 qrcode 라이브러리 사용해 QR 코드 표시 팝업창 생성 수행
투케이2K 2026. 5. 29. 19:49728x90
반응형
[개발 환경 설정]
개발 툴 : Edit++ / Vscode
개발 언어 : JavaScript

[소스 코드]
-----------------------------------------------------------------------------------------
[사전 설명 및 설정 사항]
-----------------------------------------------------------------------------------------
- 개발 환경 : Web
- 개발 기술 : 자바스크립트 / sweetAlert / qrcode
- 사전) 👉 SweetAlert 라이브러리 간략 설명 :
>> SweetAlert 는 👉 기존 alert(), confirm(), prompt()를 대체하기 위해 만들어진 JavaScript 기반 경고창(팝업) UI 라이브러리입니다.
>> SweetAlert 장점 설명 :
- 디자인이 훨씬 이쁨
- 버튼 커스터마이징 가능
- HTML 요소 삽입 가능
- Promise 기반 처리 가능
>> SweetAlert 이 제공하는 타입 설명 :
- "success" : 성공
- "error" : 에러
- "warning" : 경고
- "info" : 정보
- 사전) 👉 qrcode.js 라이브러리 간략 설명 :
>> qrcode.js 는 QRCode.js라는 경량 자바스크립트 라이브러리를 CDN을 통해 불러오는 방식입니다
>> qrcode.js 는 브라우저에서 QR 코드 생성을 매우 간단하게 해줍니다
>> qrcode.js 는 브라우저 IE8 이상 대부분 지원합니다
>> qrcode.js 는 MIT (상업적 사용 가능) 라이센스 이며, 크기가 매우 작고 가볍습니다
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
[소스 코드]
-----------------------------------------------------------------------------------------
<!DOCTYPE HTML>
<html lang="ko" translate="no">
<head>
<title>javaScriptTest</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- 반응형 구조 만들기 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
<!-- Chrome / Edge (Chromium)에서 자동 번역 기능을 완전히 비활성화 -->
<meta name="google" content="notranslate">
<!-- 내부 CSS 스타일 지정 -->
<style>
html, body {
width: 100%;
height: 100%;
margin : 0 auto;
padding : 0;
border : none;
background-color: #666;
}
</style>
<!-- [CDN 주소 설정] -->
<script src="https://code.jquery.com/jquery-latest.min.js"></script>
<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js"></script>
<!-- [자바스크립트 코드 지정] -->
<script type="module">
// -----------------------------------------------------------------
// ✅ [Window.onload 웹 브라우저 로드 완료]
// -----------------------------------------------------------------
window.onload = async function() {
console.log("[window onload] : [html 최초 로드 및 이벤트 상시 대기 실시] : [start]");
try {
// --------------------------------------
// ✅ QR 코드 데이터 생성
// --------------------------------------
const qrCodeData = "hello twok";
// --------------------------------------
// ✅ sweetAlert 팝업창 생성 수행
// --------------------------------------
swal({
title: "QR 코드",
text: "",
content: {
element: "div",
attributes: {
id: "qrcode", // 👉 동적 div 생성 위함
// 👉 QR 코드를 팝업창 중앙 배치 설정
style: `
display:flex;
justify-content:center;
align-items:center;
padding:0px;
`
}
},
button: "닫 기"
});
// --------------------------------------
// ✅ 팝업 렌더링 이후 실행 (핵심!)
// --------------------------------------
setTimeout(() => {
const container = document.getElementById('qrcode');
if (!container) return;
// 중복 방지
container.innerHTML = "";
var qrSize = 300;
new QRCode(container, {
text: qrCodeData,
width: qrSize,
height: qrSize,
colorDark: "#000000",
colorLight: "#ffffff",
correctLevel: QRCode.CorrectLevel.L // ✅ 변경 : 최대 QR 생성 용량 길이 증가
});
}, 0);
}
catch (exception) {
console.error("[window onload] : [Exception] : ❌ 예외 상황 발생 : ", exception);
}
};
</script>
</head>
<body>
</body>
</html>
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
[참고 사이트]
-----------------------------------------------------------------------------------------
▶️ [자바스크립트 SweetAlert 라이브러리 사용해 input 입력 받기 팝업창 생성 - prompt , text , number , password]
https://kkh0977.tistory.com/8788
https://blog.naver.com/kkh0977/224267047454
▶️ [자바스크립트 SweetAlert 라이브러리 사용해 팝업창 활성 시 확인 및 취소 버튼 외 동적 버튼 추가 생성 , 팝업창 자동 닫힘 방지 수행]
https://kkh0977.tistory.com/8784
https://blog.naver.com/kkh0977/224261592220
▶️ [자바스크립트 SweetAlert 라이브러리 사용해 메뉴 리스트 표시 및 메뉴 선택 팝업창 생성 수행 - radio list alert]
https://kkh0977.tistory.com/8783
https://blog.naver.com/kkh0977/224261583820
▶️ [Web/JavaScript] 자바스크립트 qrcode.js 라이브러리 사용해 옵션 지정 QR Code 큐알 코드 생성 수행
https://kkh0977.tistory.com/8546
https://blog.naver.com/kkh0977/224133937308?trackingCode=blog_bloghome_searchlist
▶️ [자바스크립트 qrcode.js 라이브러리 사용해 커스텀 옵션 지정 간단 QR 코드 생성 수행]
https://kkh0977.tistory.com/8503
https://blog.naver.com/kkh0977/224112052912?trackingCode=blog_bloghome_searchlist
-----------------------------------------------------------------------------------------
728x90
반응형
'JavaScript' 카테고리의 다른 글
Comments
