>  기사  >  웹 프론트엔드  >  비밀번호 생성기 웹사이트 구축

비밀번호 생성기 웹사이트 구축

王林
王林원래의
2024-08-25 20:30:33977검색

Build a Password Generator Website

소개

안녕하세요, 개발자 여러분! 저의 최신 프로젝트인 비밀번호 생성기를 선보이게 되어 기쁩니다. 이 도구는 안전하고 임의의 비밀번호를 쉽게 생성할 수 있도록 설계되었습니다. 온라인 계정에 강력한 비밀번호가 필요하거나 JavaScript 기술을 연습하려는 경우 이 비밀번호 생성기는 툴킷에 추가되는 훌륭한 도구입니다.

프로젝트 개요

비밀번호 생성기는 사용자가 다양한 구성으로 비밀번호를 생성할 수 있는 웹 기반 애플리케이션입니다. 비밀번호 길이를 사용자 정의하고 소문자, 대문자, 숫자, 기호와 같은 특정 문자 유형을 포함하거나 제외할 수 있습니다. 이 프로젝트는 HTML 및 CSS로 구축된 깔끔하고 사용자 친화적인 인터페이스와 JavaScript를 사용하여 동적 비밀번호 생성기를 구축하는 방법을 보여줍니다.

특징

  • 사용자 정의 가능한 비밀번호 길이: 슬라이더를 사용하여 생성된 비밀번호의 길이를 조정하세요.
  • 문자 유형 선택: 비밀번호에 포함할 문자 유형(소문자, 대문자, 숫자, 기호)을 선택하세요.
  • 생성 및 복사: 임의의 비밀번호를 생성하고 클립보드에 쉽게 복사하세요.

사용된 기술

  • HTML: 비밀번호 생성기의 구조와 레이아웃을 제공합니다.
  • CSS: 인터페이스 스타일을 지정하여 현대적이고 반응성이 뛰어난 디자인을 보장합니다.
  • JavaScript: 사용자 상호작용 및 비밀번호 복사를 포함한 비밀번호 생성 로직을 처리합니다.

프로젝트 구조

프로젝트 구조 개요는 다음과 같습니다.

Password-Generator/
├── index.html
├── style.css
└── script.js
  • index.html: 비밀번호 생성기의 HTML 구조가 포함되어 있습니다.
  • style.css: CSS 스타일을 포함하여 매력적이고 반응이 빠른 디자인을 만듭니다.
  • script.js: 비밀번호 생성 기능과 사용자 상호 작용을 관리합니다.

설치

프로젝트를 시작하려면 다음 단계를 따르세요.

  1. 저장소 복제:

    git clone https://github.com/abhishekgurjar-in/Password-Generator.git
    
  2. 프로젝트 디렉토리 열기:

    cd Password-Generator
    
  3. 프로젝트 실행:

    • 비밀번호 생성기를 사용하려면 웹 브라우저에서 index.html 파일을 엽니다.

용법

  1. 웹사이트를 엽니다 웹 브라우저에서
  2. 슬라이더를 사용하여 비밀번호 길이를 조정하세요.
  3. 포함하려는 문자 유형을 선택하거나 선택 취소하세요.
  4. 비밀번호 생성 "비밀번호 생성" 버튼을 클릭하세요.
  5. 복사 아이콘을 클릭하여 비밀번호를 클립보드에 복사하세요.

코드 설명

HTML

index.html 파일은 입력 필드, 컨트롤 및 표시 영역을 포함하여 비밀번호 생성기의 구조를 정의합니다. 다음은 일부 내용입니다.

8b05045a5be5764f313ed5b9168a17e6
49099650ebdc5f3125501fa170048923
  93f0f5c25f18dab9d176bd4f6de5d30e
    7c8d9f814bcad6a1d7abe4eda5f773e5
    acd8feeb3a0ea7477b979779de32785a
    26faf3d1af674280d03ba217d87e9421
    af75c476cdb7e6c074ca6da9b40841de
    d8503bdefe6992dd59b651156c1a80eb
    90392ec4442ad9ff612213ec639da4832cacc6d41bbb37262a98f745aa00fbf0
    b2386ffb911b14667cb8f0f91ea547a7Password Generator6e916e0f7d1e588d4f442bf645aedb2f
  9c3bca370b5104690d9ef395f2c5f8d1
  6c04bd5ca3fcae76e30b72ad730ca86d
    4883ec0eb33c31828b7c767c806e14c7
      4a249f0d628e2318394fd9b75b4636b1Password Generator473f0a7621bec819994bb5020d29372a

      34a25c77a2e9da798136e01b207e55d8
        9f296658183c8dc217a6dd649074b65b
        b447d4e20918108d1f227b35d3f83b0ccontent_copy54bdf357c58b8a65c66d7c19c8e4d114
      16b28748ea4df4d9c2150843fecfba68

      2099bb55d2af935eea656fe56e182519

      39bbc163833ae4e036fa5108a4263823
        e388a4556c0f65e1904146cc1a846beePassword Length94b3e26ee717c64999d7867364b1b4a3
        98f5e630a88a7d7159f08c0a14a2752d54bdf357c58b8a65c66d7c19c8e4d114
      16b28748ea4df4d9c2150843fecfba68

      39bbc163833ae4e036fa5108a4263823
        e7dc9bb71ade5e1b977b4fc7169140c4Include Lowercase Letters (a-z)8c1ecd4bb896b2264e0711597d40766c
        a8b444646b004d6a82c0efc74a0796e3
      16b28748ea4df4d9c2150843fecfba68

      39bbc163833ae4e036fa5108a4263823
        dcc61bab82ce65042ff81e61d412a812Include Uppercase Letters (A-Z)8c1ecd4bb896b2264e0711597d40766c
        86ca2e498f4feae7bb126ce425dec34f
      16b28748ea4df4d9c2150843fecfba68

      39bbc163833ae4e036fa5108a4263823
        0128196305b1d83f036472d48485215bInclude Numbers (0-9)8c1ecd4bb896b2264e0711597d40766c
        b9a60207358383794656d179ccc43b2c
      16b28748ea4df4d9c2150843fecfba68

      39bbc163833ae4e036fa5108a4263823
        74ac59835abb23d9c05434e220125466Include Symbols (@-*)8c1ecd4bb896b2264e0711597d40766c
        1c9eb7b8553dbb5287a55dc1961edc08
      16b28748ea4df4d9c2150843fecfba68

      1fd90c1118fb6157c85d8e0f0e7a7221
        Generate Password
      65281c5ac262bf6d81768915a4a77ac0
    16b28748ea4df4d9c2150843fecfba68
    ffd6ba4147bda351239915f463e46e38
      e388a4556c0f65e1904146cc1a846beeMade with ❤️ by Abhishek Gurjar94b3e26ee717c64999d7867364b1b4a3
    16b28748ea4df4d9c2150843fecfba68
  36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

CSS

style.css 파일은 비밀번호 생성기의 스타일을 지정하여 시각적으로 매력적이고 반응성이 뛰어납니다. 다음은 몇 가지 주요 스타일입니다.

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: sans-serif;
}

body {
  max-width: 100vw;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #000;
  color: #fff;
  font-weight: 600;
  flex-direction: column;
}

.container {
  border: 0.5px solid #fff;
  border-radius: 10px;
  padding: 28px 32px;
  display: flex;
  flex-direction: column;
  background: transparent;
  box-shadow: 8px 8px 4px #909090, 8px 8px 0px #575757;
}

.container h1 {
  font-size: 1.4rem;
  margin-block: 8px;
}

.inputBox {
  position: relative;
}

.inputBox span {
  position: absolute;
  top: 16px;
  right: 6px;
  color: #000;
  font-size: 28px;
  cursor: pointer;
  z-index: 2;
}

.passBox {
  background-color: #fff;
  border: none;
  outline: none;
  padding: 10px;
  width: 300px;
  border-radius: 4px;
  font-size: 20px;
  margin-block: 8px;
  text-overflow: ellipsis;
}

.row {
  display: flex;
  margin-block: 8px;
}

.row p, .row label {
  flex-basis: 100%;
  font-size: 18px;
}

.row input[type="checkbox"] {
  width: 20px;
  height: 20px;
}

.genBtn {
  border: none;
  outline: none;
  background-color: #2c619e;
  padding: 12px 24px;
  color: #fff;
  font-size: 18px;
  margin-block: 8px;
  font-weight: 700;
  cursor: pointer;
  border-radius: 4px;
}

.genBtn:hover {
  background-color: #0066ff;
}

.footer {
  color: white;
  margin-top: 150px;
  text-align: center;
}

.footer p {
  font-size: 16px;
  font-weight: 200;
}

자바스크립트

script.js 파일에는 비밀번호 생성, 사용자 상호작용 관리, 비밀번호를 클립보드에 복사하기 위한 로직이 포함되어 있습니다. 다음은 일부 내용입니다.

let inputSlider = document.getElementById("inputSlider");
let sliderValue = document.getElementById("sliderValue");
let passBox = document.getElementById("passBox");
let lowercase = document.getElementById("lowercase");
let uppercase = document.getElementById("uppercase");
let numbers = document.getElementById("numbers");
let symbols = document.getElementById("symbols");
let genBtn = document.getElementById("genBtn");
let copyIcon = document.getElementById("copyIcon");

// Showing input slider value 
sliderValue.textContent = inputSlider.value;
inputSlider.addEventListener("input", () => {
  sliderValue.textContent = inputSlider.value;
});

genBtn.addEventListener("click", () => {
  passBox.value = generatePassword();
});

let lowerChars = "abcdefghijklmnopqrstuvwxyz";
let upperChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let allNumbers = "0123456789";
let allSymbols = "~!@#$%^&*";

// Function to generate Password
function generatePassword() {
  let genPassword = "";
  let allChars = "";

  allChars += lowercase.checked ? lowerChars : "";
  allChars += uppercase.checked ? upperChars : "";
  allChars += numbers.checked ? allNumbers : "";
  allChars += symbols.checked ? allSymbols : "";

  if (allChars === "") {
    return genPassword;
  }

  let i = 1;
  while (i 4c18bbaca350f2b916a43e11d91f001a {
  if (passBox.value !== "") {
    navigator.clipboard.writeText(passBox.value);
    copyIcon.innerText = "check";
    copyIcon.title = "Password Copied";

    setTimeout(() => {
      copyIcon.innerHTML = "content_copy";
      copy

Icon.title = "";
    }, 3000);
  }
});

라이브 데모

여기에서 비밀번호 생성기 프로젝트의 라이브 데모를 확인하실 수 있습니다.

결론

비밀번호 생성기를 만드는 것은 제가 프런트엔드 개발 기술을 적용할 수 있게 해 준 즐거운 프로젝트였습니다. 이 도구는 강력한 비밀번호를 생성하는 데 유용하며 웹 개발 프로젝트에 큰 도움이 될 수 있습니다. 여러분도 저만큼 도움이 되길 바랍니다. 즐거운 코딩하세요!

크레딧

이 프로젝트는 JavaScript 기술을 향상하고 실용적인 웹 도구를 만들기 위한 여정의 일환으로 개발되었습니다.

작가

  • 아비셰크 구자르
    • GitHub 프로필

위 내용은 비밀번호 생성기 웹사이트 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.