(focusable) focus and unfocus with typescript

This commit is contained in:
Julien Calixte
2023-07-08 23:58:39 +02:00
parent 8aaf4f5d7a
commit e67541a64b
3 changed files with 24 additions and 4 deletions

View File

@@ -23,7 +23,7 @@
Value analysis / Value engineering Value analysis / Value engineering
</p> </p>
</section> </section>
<section class="levers focusable"> <section class="levers">
<ul> <ul>
<li class="security focusable">Security</li> <li class="security focusable">Security</li>
<li class="quality focusable">Quality</li> <li class="quality focusable">Quality</li>
@@ -99,14 +99,14 @@
</section> </section>
<section class="ground"> <section class="ground">
<section class="improvement"> <section class="improvement">
<ul class="focusable"> <ul class="improvement-list focusable">
<li class="heijunka focusable">Heijunka</li> <li class="heijunka focusable">Heijunka</li>
<li class="standards focusable">Standards</li> <li class="standards focusable">Standards</li>
<li class="kaizen focusable">Kaizen</li> <li class="kaizen focusable">Kaizen</li>
</ul> </ul>
</section> </section>
<section class="stability"> <section class="stability">
<ul class="focusable"> <ul class="stability-list focusable">
<li class="s5s focusable">5S</li> <li class="s5s focusable">5S</li>
<li class="problem-solving focusable">Problem solving</li> <li class="problem-solving focusable">Problem solving</li>
<li class="tpm focusable">TPM</li> <li class="tpm focusable">TPM</li>

16
main.ts
View File

@@ -18,3 +18,19 @@ if (size === "small") {
body.style.fontSize = "15px" body.style.fontSize = "15px"
} }
} }
const focusElements = params.getAll("focus")
if (focusElements.length >= 0) {
const focusables = document.querySelectorAll(".focusable")
focusables.forEach((focusable) => {
const elementToFocus = focusElements.some((element) =>
focusable.classList.contains(element)
)
if (!elementToFocus) {
focusable.classList.add("no-focus")
}
})
}

View File

@@ -2,7 +2,7 @@
:root { :root {
--background-color: #b2f1ad; --background-color: #b2f1ad;
--background-color-no-focus: #b2f1ad80; --background-color-no-focus: #f4f9f3;
} }
* { * {
@@ -42,6 +42,10 @@ li {
background-color: var(--background-color); background-color: var(--background-color);
} }
.focusable.no-focus {
background-color: var(--background-color-no-focus);
}
.customer-satisfaction-roof { .customer-satisfaction-roof {
display: flex; display: flex;
flex-direction: column; flex-direction: column;