各位開發者大家好!我很高興向大家展示我的最新專案:QR 程式碼產生器。該專案是深入研究 JavaScript 的好方法,重點關注如何根據使用者輸入動態產生 QR 碼。無論您是 Web 開發新手還是希望提高 JavaScript 技能,這個 QR 程式碼產生器專案都是學習和創建有用內容的絕佳機會。
QR 代碼產生器 是一個基於 Web 的應用程序,允許使用者從任何文字輸入產生 QR 代碼。本專案示範如何建立簡單的互動式使用者介面、整合第三方 API 以及有效處理使用者輸入。
以下是專案結構的快速瀏覽:
QR-Code-Generator/ ├── index.html ├── style.css └── script.js
要開始該項目,請按照以下步驟操作:
複製儲存庫:
git clone https://github.com/abhishekgurjar-in/QR-Code-Generator.git
開啟專案目錄:
cd QR-Code-Generator
運行項目:
index.html 檔案提供了二維碼產生器的基本結構,包括用於產生二維碼的輸入欄位和按鈕。這是一個片段:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>QR Code Generator</title> <link rel="stylesheet" href="style.css" /> <script src="script.js" defer></script> </head> <body> <div class="container"> <div class="box"> <section class="upper"> <h1>QR Code Generator</h1> <p>Paste text to create QR Code</p> </section> <form id="qrForm"> <input id="qrInputText" type="text" name="qrText" placeholder="Enter Text" /> <button id="generateBtn" type="submit">Generate QR Code</button> </form> <section id="qrContainer" class="qr_container"> <img id="qrImage" src="./qr.webp" alt="QR Code" /> </section> </div> </div> <div class="footer"> <p>Made with ❤️ by Abhishek Gurjar</p> </div> </body> </html>
style.css 檔案設定 QR 碼產生器的樣式,提供現代且使用者友好的佈局。以下是一些關鍵樣式:
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700&display=swap"); :root { --primary: #47185c; --primary-dark: #14001d; } * { margin: 0; padding: 0; box-sizing: border-box; } html { font-family: "Poppins", sans-serif; } body { background-color: var(--primary); } .container { display: grid; place-items: center; height: 80vh; } .box { padding: 20px; width: 400px; background-color: white; } .upper h1 { font-size: 32px; font-weight: 400; line-height: 32px; } form { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: 10px; } form input { width: 100%; height: 40px; padding: 10px 15px; } form button { width: 100%; height: 40px; padding: 10px 15px; background-color: var(--primary); border: none; color: white; opacity: 0.9; transition: 0.3s ease-in; } .qr_container { border: 1px solid var(--primary); display: flex; justify-content: center; height: 0; opacity: 0; transition: opacity 0.3s ease-in, height 0.1s ease; } .qr_container.show { padding: 10px; height: 150px; opacity: 1; } .qr_container img { height: 100%; } .footer { color: white; margin: 50px; text-align: center; }
script.js 檔案管理產生 QR 碼和處理使用者互動的邏輯。這是一個片段:
const qrFormEl = document.getElementById("qrForm"); const qrImageEl = document.getElementById("qrImage"); const qrContainerEl = document.getElementById("qrContainer"); const qrInputTextEl = document.getElementById("qrInputText"); const generateBtnEl = document.getElementById("generateBtn"); const renderQRCode = (url) => { if (!url) return; generateBtnEl.innerText = "Generating QR Code..."; qrImageEl.src = url; qrImageEl.addEventListener("load", () => { qrContainerEl.classList.add("show"); generateBtnEl.innerText = "Generate QR Code"; }); }; qrFormEl.addEventListener("submit", (event) => { event.preventDefault(); const formData = new FormData(qrFormEl); const text = formData.get("qrText"); const qrCodeUrl = `https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=${text}`; renderQRCode(qrCodeUrl); }); qrInputTextEl.addEventListener("keyup", () => { if (!qrInputTextEl.value.trim()) { qrContainerEl.classList.remove("show"); } });
您可以在此處查看二維碼產生器的現場演示。
建立這個 QR 程式碼產生器是一次有趣且具有教育意義的體驗,它幫助我更好地理解 JavaScript 以及如何使用 API 來創建動態 Web 應用程式。我希望這個專案也能激勵您使用 JavaScript 建立一些很酷的東西。快樂編碼!
這個專案是我增強 Web 開發技能之旅的一部分,專注於 JavaScript 和使用者互動。
以上是建立一個二維碼產生器網站的詳細內容。更多資訊請關注PHP中文網其他相關文章!