Komentar

Notification texts go here Contact Us Buy Now!

Blogger HTML CSS ve JavaScript'te Palindrome Denetleyicisi

 


Bir palindrom, ileri ile aynı şekilde geriye doğru okuyan bir kelime, kelime öbeği veya cümledir, Örn. seviye, ödünç al veya çal, 1234321. My palindrome checker'da kullanıcılar, palindromu kontrol et düğmesine tıklayarak metin veya sayı girebilir ve girilen değerin palindrom olup olmadığını kontrol edebilir.

JavaScript'te Palindrome Checker [Kaynak Kodları]


      <!DOCTYPE html>
<!-- Coding By CodingNepal - youtube.com/codingnepal -->
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">  
    <title>Palindrome Checker in JavaScript | CodingNepal</title>
    <link rel="stylesheet" href="style.css">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
  </head>
  <body>
    <div class="wrapper">
      <header>
        <h1>Palindrome Checker</h1>
        <p>A palindrome is a word or phrase that reads the same backwards as forwards, e.g. level, refer.</p>
      </header>
      <div class="inputs">
        <input type="text" spellcheck="false" placeholder="Enter text or number">
        <button>Check Palindrome</button>
      </div>
      <p class="info-txt"></p>
    </div>
    <script src="script.js"></script>
  </body>
</html>
  


Şimdi CSS Kodlarını ekleyelim.


      /* Import Google Font - Poppins */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}
body{
  display: flex;
  padding: 0 10px;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  background: #AA57CC;
}
::selection{
  color: #fff;
  background: rgb(170,87,204,0.8);
}
.wrapper{
  max-width: 500px;
  background: #fff;
  border-radius: 7px;
  padding: 20px 25px 15px;
  box-shadow: 0 15px 40px rgba(0,0,0,0.12);
}
header h1{
  font-size: 27px;
  font-weight: 500;
}
header p{
  margin-top: 5px;
  font-size: 18px;
  color: #474747;
}
.inputs{
  margin: 20px 0 27px;
}
.inputs input{
  width: 100%;
  height: 60px;
  outline: none;
  padding: 0 17px;
  font-size: 19px;
  border-radius: 5px;
  border: 1px solid #999;
  transition: 0.1s ease;
}
.inputs input::placeholder{
  color: #999999;
}
.inputs input:focus{
  box-shadow: 0 3px 6px rgba(0,0,0,0.13);
}
.inputs input:focus::placeholder{
  color: #bebebe;
}
.inputs button{
  width: 100%;
  height: 56px;
  border: none;
  opacity: 0.7;
  outline: none;
  color: #fff;
  cursor: pointer;
  font-size: 17px;
  margin-top: 20px;
  border-radius: 5px;
  pointer-events: none;
  background: #AA57CC;
  transition: opacity 0.15s ease;
}
.inputs button.active{
  opacity: 1;
  pointer-events: auto;
}
.info-txt{
  display: none;
  font-size: 19px;
  text-align: center;
  margin-bottom: 18px;
}
.info-txt span{
  color: #AA57CC;
}
@media (max-width: 520px) {
  .wrapper{
    padding: 17px 20px 10px;
  }
  header h1{
    font-size: 25px;
  }
  header p{
    font-size: 16px;
  }
  .inputs input{
    height: 54px;
    font-size: 17px;
  }
  .inputs button{
    height: 50px;
    font-size: 16px;
    margin-top: 17px;
  }
  .info-txt{
    font-size: 18px;
  }
}
  


Şimdi son olarak JavaScript kodlarını ekleyelim.


      const txtInput = document.querySelector(".inputs input"),
checkBtn = document.querySelector(".inputs button"),
infoTxt = document.querySelector(".info-txt");
let filterInput;

checkBtn.addEventListener("click", () => {
    let reverseInput = filterInput.split("").reverse().join("");
    infoTxt.style.display = "block";
    if(filterInput != reverseInput) {
        return infoTxt.innerHTML = `No, '${txtInput.value}' isn't a palindrome!`;
    }
    infoTxt.innerHTML = `Yes, '${txtInput.value}' is a palindrome!`;
});

txtInput.addEventListener("keyup", () => {
    filterInput = txtInput.value.toLowerCase().replace(/[^A-Z0-9]/ig, "");
    if(filterInput) {
        return checkBtn.classList.add("active");
    }
    infoTxt.style.display = "none";
    checkBtn.classList.remove("active");
});
  


Bütün işlemler bu kadar demo sayfamız aşağıdadır.

DEMO SAYFASI

About the Author

Bilgisayar ve Yazılım Programları Hakkında En Güncel Bilgiler Bu Blog'da Bizi Takip Etmeyi Unutmayın.

إرسال تعليق

Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.