Design comparison
Community feedback
- @AdrianoEscarabotePosted almost 2 years ago
Hi Willian Phellip, how are you? I really liked the result of your project, but I have some tips that I think you will enjoy:
We can improve the code using the
forEach
method to have a cleaner code!first I changed the html ids:
<li id="Choice">1</li> <li id="Choice">2</li> <li id="Choice">3</li> <li id="Choice">4</li> <li id="Choice">5</li>
So we can use
querySelectorAll
.I'll remove all the
const number
variables, and add this one:const numbers = document.querySelectorAll("#Choice")
and then we'll use
forEach
to iterate through all the elements of that variable:numbers.forEach(element => { element.addEventListener("click", () => { reviewResult.innerHTML = (`You selected ${element.innerText} out of 5`) buttonSubmit.addEventListener('click', () => { frontCard.classList.add("hide") thanksCard.classList.remove('hide') }) }) })
I added the submit button event inside the event so that only when the user selects a number the submit button is available!
The rest is great!
I hope it helps... π
Marked as helpful0 - @VCaramesPosted almost 2 years ago
Hey there! π Here are some suggestions to help improve your code:
- The βicons/illustrationsβ in this component serve no other purpose than to be decorative; They add no value. There
alt tag
should be left blank and have anaria-hidden=βtrueβ
to hide them from assistive technology.
More Info:π
https://www.w3.org/WAI/tutorials/images/
- The proper way to build the "rating buttons" in this challenge is to create a
form
and inside of it, there should be fiveinput radios
and eachinput
should have alabel
attached to it to make the buttons accessible. Finally wrap all theinputs
andlabels
inside afieldset
to prevent users from making more than one selection.
More Info:π
MDN <fieldset>: The Field Set element
- The
attribution
should be wrapped inside a `footers element.
If you have any questions or need further clarification, feel free to reach out to me.
Happy Coding!ππ
0 - The βicons/illustrationsβ in this component serve no other purpose than to be decorative; They add no value. There
Please log in to post a comment
Log in with GitHubJoin our Discord community
Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!
Join our Discord