開発者の皆さん、こんにちは!私の最新プロジェクト、QR コード ジェネレーター を紹介できることを嬉しく思います。このプロジェクトは、ユーザー入力に基づいて QR コードを動的に生成する方法に焦点を当て、JavaScript を詳しく学ぶのに最適な方法です。 Web 開発が初めての方でも、JavaScript のスキルを向上させたいと考えている方でも、この QR コード ジェネレーター プロジェクトは、何か役に立つものを学び、作成する絶好の機会です。
QR コード ジェネレーター は、ユーザーが任意のテキスト入力から QR コードを生成できる Web ベースのアプリケーションです。このプロジェクトでは、シンプルでインタラクティブなユーザー インターフェイスを作成し、サードパーティ 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 ファイルは、QR コードを生成するための入力フィールドやボタンなど、QR コード ジェネレーターの基本構造を提供します。スニペットは次のとおりです:
<!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 コード ジェネレーターのライブ デモをチェックできます。
この QR コード ジェネレーターの構築は楽しくて勉強になる経験で、JavaScript と API を操作して動的な Web アプリケーションを作成する方法をより深く理解するのに役立ちました。このプロジェクトが、あなたも JavaScript で何か素晴らしいものを構築するきっかけとなることを願っています。コーディングを楽しんでください!
このプロジェクトは、JavaScript とユーザー インタラクションに焦点を当て、Web 開発スキルを向上させる私の旅の一環として開発されました。
以上がQR コード生成 Web サイトを構築するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。