From 683863f269489c61e9f03e5d467e02969f4c76c8 Mon Sep 17 00:00:00 2001 From: Saksham Mittal Date: Sat, 2 Apr 2022 20:08:02 +0530 Subject: Give feedback on guess by color coding each letter --- index.html | 2 +- script.js | 46 +++++++++++++++++++++++++++++++++++----------- style.css | 4 ++++ 3 files changed, 40 insertions(+), 12 deletions(-) diff --git a/index.html b/index.html index 39427fa..d4fd3cc 100644 --- a/index.html +++ b/index.html @@ -11,7 +11,7 @@
-

+

diff --git a/script.js b/script.js index 6854ba5..600a5b2 100644 --- a/script.js +++ b/script.js @@ -1,34 +1,58 @@ let answer = "hello"; -let form = document.querySelector('form'); +let len = answer.length; let input = document.querySelector('input'); -let name = document.querySelector('#result'); + let win = document.querySelector('#win'); +let hint = document.querySelector('#hint'); let attempt = document.querySelector('#attempt'); let exit = false; let tries = 0; +function letterinstr(c) { + + let isin = false; + + for (var i = 0; i < len; i++) { + if (c == answer.charAt(i)) { + isin = true; + break; + } + } + + return isin; + +} + function checkAnswer(event) { event.preventDefault(); if (!exit) { - if (input.value.length == 5) { - tries++; - name.innerHTML = `${input.value}`; + if (input.value.length == len) { if (input.value == answer) { + tries++; win.innerHTML = "You won!"; exit = true; } else { + tries++; win.innerHTML = "Not quite right!"; + hint.innerHTML += "
"; + for (var i = 0; i < len; i++) { + if (input.value.charAt(i) != answer.charAt(i) && !(letterinstr(input.value.charAt(i))) ) { + hint.innerHTML += '' + input.value.charAt(i) + ""; + } else if (input.value.charAt(i) != answer.charAt(i) && (letterinstr(input.value.charAt(i))) ) { + hint.innerHTML += '' + input.value.charAt(i) + ""; + } else if (input.value.charAt(i) == answer.charAt(i)) { + hint.innerHTML += '' + input.value.charAt(i) + ""; + } + } } - if (tries == 1) { - attempt.innerHTML = tries + " attempt taken"; - } else { - attempt.innerHTML = tries + " attempts taken"; + + attempt.innerHTML = tries + " attempt"; + if (tries > 1) { + attempt.innerHTML += "s"; } - } else { - name.innerHTML = ""; } } } diff --git a/style.css b/style.css index 70d56db..da332c2 100644 --- a/style.css +++ b/style.css @@ -9,3 +9,7 @@ input { background: #000000; color: #ffffff; } + +span { + font-size: 2em; +} -- cgit 1.4.1