D’un naturel rebelle et magnifiquement volumineux, les cheveux frisés fascinent autant qu’ils complexifient. Chaque boucle raconte une histoire, mais son entretien peut se transformer en véritable casse-tête saisonnier. Comment faire pour conserver la beauté et la santé des boucles, qu’il vente, qu’il pleuve ou sous un soleil ardent ? Ce défi capillaire ne cesse de gagner en importance, notamment avec l’engouement croissant pour les soins naturels et les marques spécialisées telles que DévaCurl, SheaMoisture ou Cantu.
Les cheveux à la texture frisée demandent une attention pointue, car leur forme spirale ralentit la diffusion du sébum, ce qui les rend plus secs et fragiles. Ajoutez à cela les agressions liées aux variations climatiques et l’usage inadapté de produits cosmétiques, et la boucle peut vite se transformer en cauchemar. Or, grâce à une routine méticuleuse, à l’adoption de soins ciblés comme ceux de Aunt Jackie’s ou Frizz Ease, à la compréhension de leur nature spécifique, les cheveux frisés peuvent révéler toute leur splendeur, toute l’année.
Sur ce chemin de la maîtrise capillaire, des conseils pratiques associés à la science des cheveux frisés aident à décrypter les bonnes habitudes : hydratation, nutrition, démêlage doux, choix des accessoires, protection nocturne, et même coloration professionnelle avec L’Oreal Professionnel. Afin d’afficher des boucles bien définies, rebondies, sans frisottis ni casse, un savoir-faire à la croisée des savoirs ancestraux et des innovations modernes est désormais à portée de main.
💧 Hydratation régulière pour conserver la souplesse des boucles, via des produits légers à base d’aloe vera, glycérine et eau.
🍃 Nutrition adaptée avec des huiles végétales (huile de coco, beurre de mangue), indispensables pour fortifier les cheveux frisés et limiter la casse.
🪥 Démêlage uniquement sur cheveux humides, avec un peigne à dents larges ou brosse douce, afin de préserver l’intégrité des boucles.
🌙 Protection nocturne grâce aux accessoires en soie (taies d’oreiller, bonnets) qui préservent la fibre capillaire et évitent l’écrasement des boucles.
les règles d’or pour une routine capillaire efficace selon la nature des cheveux frisés
Comprendre pleinement ses cheveux frisés est une étape incontournable avant de pouvoir les choyer efficacement. Contrairement aux cheveux bouclés aux ondulations plus lâches, les cheveux frisés s’enroulent étroitement, souvent en forme de ressorts ou de tire-bouchons. Cette structure complexe réduit considérablement la circulation naturelle du sébum, rendant les mèches plus sèches et sujettes à la casse.
Le diagnostic capillaire doit être exact : des cheveux fins demandent un protocole différent des cheveux épais. Par exemple, DévaCurl propose des shampoings doux comme Perfect Match pour cheveux frisés fins, tandis que SheaMoisture s’oriente vers des soins nourrissants adaptés aux boucles plus denses. Ces différences conditionnent les produits à choisir.
Il est fondamental de distinguer deux sensations souvent confondues : hydratation et nutrition. L’hydratation apporte de l’eau dans la fibre pour souplesse et rebond, souvent via des formulations à base de glycérine, d’aloe vera ou d’ingrédients similaires. La nutrition, quant à elle, répare les dégâts en apportant des matières grasses et protéines essentielles, parfois sous forme d’huiles de coco ou de beurres végétaux (comme le beurre de mangue reconnu pour son efficacité sur cheveux abîmés).
🧴 Hydratation à privilégier avec des leave-in ou sprays légers, à renouveler régulièrement.
🌰 Nutrition à faire avec des huiles riches ou beurres, en particulier sur les pointes sèches.
🛁 Utiliser un shampooing doux, sans sulfates agressifs, qui respectera l’équilibre naturel des cheveux.
🤲 Ne jamais sécher ses cheveux violemment : opter pour un séchage à l’air libre ou au diffuseur est un geste protecteur.
Tableau comparatif interactif des types de cheveux frisés, produits adaptés, techniques, et fréquence de soins.
Aucun résultat trouvé.
// ———————————————-
// Internationalization strings
// Facile à étendre pour d’autres langues
const I18N = {
fr: {
tableHeaders: {
type: « Type de cheveux frisés »,
products: « Produits adaptés »,
techniques: « Techniques »,
frequency: « Fréquence de soins »
},
noResults: « Aucun résultat trouvé. »,
searchPlaceholder: « Rechercher… »,
langLabel: « Langue : »
},
en: {
tableHeaders: {
type: « Curly Hair Types »,
products: « Recommended Products »,
techniques: « Techniques »,
frequency: « Care Frequency »
},
noResults: « No results found. »,
searchPlaceholder: « Search… »,
langLabel: « Language: »
},
es: {
tableHeaders: {
type: « Tipos de cabello rizado »,
products: « Productos recomendados »,
techniques: « Técnicas »,
frequency: « Frecuencia de cuidado »
},
noResults: « No se encontraron resultados. »,
searchPlaceholder: « Buscar… »,
langLabel: « Idioma: »
},
de: {
tableHeaders: {
type: « Lockentypen »,
products: « Empfohlene Produkte »,
techniques: « Techniken »,
frequency: « Pflegefrequenz »
},
noResults: « Keine Ergebnisse gefunden. »,
searchPlaceholder: « Suchen… »,
langLabel: « Sprache: »
}
};// ———————————————-
// Données initiales – modifiables facilement ici
const DATA = [
{
type: {
fr: « Ondulés légers »,
en: « Loose waves »,
es: « Ondas ligeras »,
de: « Leichte Wellen »
},
products: {
fr: « Crème légère, huile de noix de coco »,
en: « Light cream, coconut oil »,
es: « Crema ligera, aceite de coco »,
de: « Leichte Creme, Kokosnussöl »
},
techniques: {
fr: « Définir avec doigts, éviter brossage »,
en: « Define with fingers, avoid brushing »,
es: « Definir con los dedos, evitar cepillado »,
de: « Mit Fingern definieren, Bürsten vermeiden »
},
frequency: {
fr: « 1 à 2 fois par semaine »,
en: « 1-2 times per week »,
es: « 1 a 2 veces por semana »,
de: « 1 bis 2 mal pro Woche »
}
},
{
type: {
fr: « Bouclés serrés »,
en: « Tight curls »,
es: « Rizos apretados »,
de: « Enge Locken »
},
products: {
fr: « Gel fixant, crème hydratante »,
en: « Styling gel, moisturizing cream »,
es: « Gel fijador, crema hidratante »,
de: « Styling-Gel, Feuchtigkeitscreme »
},
techniques: {
fr: « Twist out, éviter chaleur excessive »,
en: « Twist out, avoid excessive heat »,
es: « Twist out, evitar calor excesivo »,
de: « Twist out, übermäßige Hitze vermeiden »
},
frequency: {
fr: « Tous les 3-4 jours »,
en: « Every 3-4 days »,
es: « Cada 3-4 días »,
de: « Alle 3-4 Tage »
}
},
{
type: {
fr: « Crépus »,
en: « Coily »,
es: « Crespado »,
de: « Korkenzieherlocken »
},
products: {
fr: « Beurre de karité, huiles riches »,
en: « Shea butter, rich oils »,
es: « Manteca de karité, aceites ricos »,
de: « Sheabutter, reichhaltige Öle »
},
techniques: {
fr: « Hydratation en profondeur, coiffures protectrices »,
en: « Deep hydration, protective styles »,
es: « Hidratación profunda, estilos protectores »,
de: « Tiefe Feuchtigkeit, Schutzfrisuren »
},
frequency: {
fr: « Tous les 2-3 jours »,
en: « Every 2-3 days »,
es: « Cada 2-3 días »,
de: « Alle 2-3 Tage »
}
}
];// ———————————————-
// Variables d’état
let currentLang = ‘fr’;
let currentSortKey = null;
let currentSortAsc = true;
let filteredData = DATA.slice();// ———————————————-
// Eléments DOM
const tableBody = document.getElementById(« tableBody »);
const languageSelect = document.getElementById(« languageSelect »);
const searchInput = document.getElementById(« searchInput »);
const noResultsMsg = document.getElementById(« noResults »);// ———————————————-
// Initialise le tableau et UI
function initTable() {
updateTableHeaders();
renderTableRows(filteredData);
}// Met à jour les en-têtes selon la langue
function updateTableHeaders() {
const headers = document.querySelectorAll(« #curlTable thead th »);
const labels = I18N[currentLang].tableHeaders;
headers[0].textContent = labels.type;
headers[1].textContent = labels.products;
headers[2].textContent = labels.techniques;
headers[3].textContent = labels.frequency;// Accessibilité label langue
document.getElementById(« langLabel »).textContent = I18N[currentLang].langLabel;// Placeholder recherche
searchInput.placeholder = I18N[currentLang].searchPlaceholder;
searchInput.setAttribute(« aria-label », I18N[currentLang].searchPlaceholder);noResultsMsg.textContent = I18N[currentLang].noResults;
}// Affiche ou masque le message « aucun résultat »
function toggleNoResults(show) {
noResultsMsg.style.display = show ? ‘block’ : ‘none’;
}// Trie les données par la clé et sens choisis
function sortData(key) {
if (currentSortKey === key) {
currentSortAsc = !currentSortAsc; // inverse le sens
} else {
currentSortKey = key;
currentSortAsc = true;
}// Met à jour aria-sort pour les colonnes
document.querySelectorAll(« #curlTable thead th.sortable »).forEach(th => {
th.setAttribute(« aria-sort », « none »);
});
const header = document.querySelector(`#curlTable thead th[data-key= »${key} »]`);
header.setAttribute(« aria-sort », currentSortAsc ? « ascending » : « descending »);filteredData.sort((a,b) => {
const aVal = a[key][currentLang].toLowerCase();
const bVal = b[key][currentLang].toLowerCase();
if (aVal bVal) return currentSortAsc ? 1 : -1;
return 0;
});
renderTableRows(filteredData);
}// Renvoie vrai si le texte ligne contient la recherche
function matchesSearch(item, term) {
term = term.toLowerCase();
return Object.keys(item).some(k => item[k][currentLang].toLowerCase().includes(term));
}// Rendu des lignes du tableau
function renderTableRows(data) {
tableBody.innerHTML = « »;
if (data.length === 0) {
toggleNoResults(true);
return;
} else {
toggleNoResults(false);
}data.forEach((row, idx) => {
const tr = document.createElement(« tr »);
tr.setAttribute(« role », « row »);
tr.tabIndex = -1;// Type de cheveux
const tdType = document.createElement(« td »);
tdType.textContent = row.type[currentLang];
tdType.setAttribute(« role », « gridcell »);
tr.appendChild(tdType);// Produits adaptés
const tdProd = document.createElement(« td »);
tdProd.textContent = row.products[currentLang];
tdProd.setAttribute(« role », « gridcell »);
tr.appendChild(tdProd);// Techniques
const tdTech = document.createElement(« td »);
tdTech.textContent = row.techniques[currentLang];
tdTech.setAttribute(« role », « gridcell »);
tr.appendChild(tdTech);// Fréquence
const tdFreq = document.createElement(« td »);
tdFreq.textContent = row.frequency[currentLang];
tdFreq.setAttribute(« role », « gridcell »);
tr.appendChild(tdFreq);tableBody.appendChild(tr);
});
}// Filtre selon la recherche et met à jour l’affichage
function filterTable(term) {
if (!term.trim()) {
filteredData = DATA.slice();
} else {
filteredData = DATA.filter(item => matchesSearch(item, term));
}
// Si on avait une colonne triée, on trie à nouveau la data filtrée
if(currentSortKey) {
sortData(currentSortKey);
} else {
renderTableRows(filteredData);
}
}// ———————————————-
// Événements// Changement de langue
languageSelect.addEventListener(« change », e => {
currentLang = e.target.value;
updateTableHeaders();
filterTable(searchInput.value);
});// Recherche instantanée
searchInput.addEventListener(« input », e => {
filterTable(e.target.value);
});// Tri par click sur en-tête
document.querySelectorAll(« #curlTable thead th.sortable »).forEach(th => {
th.addEventListener(« click », () => {
sortData(th.dataset.key);
});
th.addEventListener(« keydown », e => {
if(e.key === « Enter » || e.key === » « ){
e.preventDefault();
sortData(th.dataset.key);
}
});
});// ———————————————-
// Chargement initial
initTable();/*
FIN DU SCRIPT
*//*
API / données exterieures non utilisées car données internes fournies et contraintes
=> Pas de consommation API nécessaire.
Exemple gratuit d’une API publique cheveux (non utilisée ici) :
URL: https://hair-types-api.example.com/curly
Exemple de réponse JSON :
[
{
« type »: « Curly Hair »,
« products »: « Curl cream, leave-in conditioner »,
« techniques »: « Finger coil, plopping »,
« frequency »: « Every 3 days »
}
]
*/
adapter ses soins aux saisons : défis et astuces pour cheveux frisés en hiver et été
Les variations climatiques sont des facteurs déterminants dans la gestion des cheveux frisés. L’hiver peut accentuer la sécheresse par le froid et le chauffage intérieur, tandis que l’été expose à l’ensoleillement, au sel marin et au chlore. Les boucles s’en trouvent fragilisées, avec une tendance à devenir rêches ou cassantes.
En hiver, privilégier les soins nourrissants et protecteurs est impératif. Il est conseillé d’utiliser des huiles de protection comme l’huile de coco, très bénéfique pour maintenir la fibre capillaire souple et douce. Des masques riches, tels que ceux à base de beurre de mangue ou d’aloe vera, réparent également efficacement. L’enveloppement des cheveux avec un foulard en soie ou un bonnet doublé peut limiter les frottements et conserver l’hydratation.
À l’inverse, en été, la priorité est donnée à l’hydratation et à la légèreté des soins. Des sprays à base d’eau d’aloe vera ou des laits capillaires rafraîchissants comme ceux de Mielle Organics évitent le dessèchement et la déshydratation causée par le soleil. Les cheveux frisés peuvent aussi bénéficier d’un coiffage protecteur, en chignon ou tresses, pour limiter l’exposition aux agressions extérieures.
/*
Infographie interactive pour « Comment gérer les cheveux frisés en toute saison »
Données affichées en fonction de la saison sélectionnée (Hiver / Été).
Pas de ressources externes lourdes, juste Bulma CSS pour styling.
Accessibilité prise en compte avec roles ARIA et navigation clavier.
Texte facilement modifiable à partir de l’objet « I18N ».
*/// Texte internationalisé facilement modifiable ici
const I18N = {
fr: {
title: « Gérer les cheveux frisés en toute saison »,
tabs: {
winter: « Hiver »,
summer: « Été »
},
winterContent: {
Hydratation: [
« Utiliser des huiles riches (argan, jojoba) après chaque lavage »,
« Appliquer un masque hydratant profond une fois par semaine »,
« Boire beaucoup d’eau pour hydrater de l’intérieur »
],
Nutrition: [
« Privilégier une alimentation riche en oméga-3 (poissons gras, noix) »,
« Éviter les aliments trop salés qui déshydratent les cheveux »,
« Compléter avec des vitamines B et E si besoin »
],
Protection: [
« Couvrir les cheveux avec un foulard en soie la nuit »,
« Éviter l’utilisation excessive de chaleur (sèche-cheveux, lisseurs) »,
« Utiliser des coiffures protectrices pour limiter les agressions »
]
},
summerContent: {
Hydratation: [
« Hydrater les cheveux quotidiennement avec un leave-in léger »,
« Rincer les cheveux à l’eau claire après la piscine ou la mer »,
« Appliquer des sprays hydratants contenant de l’aloe vera »
],
Nutrition: [
« Manger des fruits riches en antioxydants (fruits rouges, agrumes) »,
« Favoriser une alimentation équilibrée riche en vitamines A et C »,
« Limiter la consommation d’alcool qui déshydrate »
],
Protection: [
« Utiliser un chapeau ou foulard pour protéger du soleil »,
« Appliquer un protecteur UV spécialement adapté aux cheveux frisés »,
« Éviter l’exposition prolongée aux rayons directs du soleil »
]
}
}
};// Variable pour langue sélectionnée (seulement fr ici)
const lang = ‘fr’;// Récupération des éléments importants
const titleElem = document.getElementById(‘title’);
const tabs = {
winter: document.getElementById(‘tab-winter’),
summer: document.getElementById(‘tab-summer’)
};
const panels = {
winter: document.getElementById(‘panel-winter’),
summer: document.getElementById(‘panel-summer’)
};
const contents = {
winter: document.getElementById(‘content-winter’),
summer: document.getElementById(‘content-summer’)
};// Fonction pour créer la carte de contenu
function createCard(title, points) {
const card = document.createElement(‘article’);
card.className = ‘card’;
card.setAttribute(‘tabindex’, ‘0’);
const h3 = document.createElement(‘h3’);
h3.textContent = title;
card.appendChild(h3);
const ul = document.createElement(‘ul’);
points.forEach(point => {
const li = document.createElement(‘li’);
li.textContent = point;
ul.appendChild(li);
});
card.appendChild(ul);
return card;
}// Fonction pour remplir le contenu d’une saison
function fillContent(season) {
const data = I18N[lang][season + « Content »];
const container = contents[season];
container.innerHTML = « »;
for (const section in data) {
container.appendChild(createCard(section, data[section]));
}
}// Fonction pour gérer la bascule des tabs
function setActiveSeason(season) {
for (const s of Object.keys(tabs)) {
const selected = s === season;
tabs[s].classList.toggle(‘active’, selected);
tabs[s].setAttribute(‘aria-selected’, selected.toString());
tabs[s].setAttribute(‘tabindex’, selected ? ‘0’ : ‘-1’);
panels[s].hidden = !selected;
panels[s].setAttribute(‘aria-hidden’, (!selected).toString());
}
}// Initialisation
function initInfographie() {
// Titre
titleElem.textContent = I18N[lang].title;// Boutons
tabs.winter.textContent = I18N[lang].tabs.winter;
tabs.summer.textContent = I18N[lang].tabs.summer;fillContent(‘winter’);
fillContent(‘summer’);// Événements clavier & click sur tabs
Object.entries(tabs).forEach(([season, button]) => {
button.addEventListener(‘click’, () => {
setActiveSeason(season);
button.focus();
});
button.addEventListener(‘keydown’, e => {
if (e.key === « ArrowRight » || e.key === « ArrowLeft ») {
e.preventDefault();
// cycle entre les deux tabs (2 max)
const seasons = Object.keys(tabs);
const i = seasons.indexOf(season);
const nextIndex = (e.key === « ArrowRight ») ? (i +1) % seasons.length : (i -1 + seasons.length) % seasons.length;
tabs[seasons[nextIndex]].click();
}
if (e.key === « Home ») {
e.preventDefault();
tabs[Object.keys(tabs)[0]].click();
}
if (e.key === « End ») {
e.preventDefault();
tabs[Object.keys(tabs)[Object.keys(tabs).length -1]].click();
}
});
});// Set default active tab
setActiveSeason(‘winter’);
}initInfographie();/* Pas d’API externe nécessaire pour cet outil, tout est statique et optimisé pour la performance */
/*
API possible et gratuite pour inspirations cheveux :
https://curlapi.com/api/haircare
Exemple réponse JSON (commentaire uniquement) :
{
« seasons »: {
« winter »: {
« hydration »: [« Apply oil after wash », « Use deep masks weekly »],
« nutrition »: [« Rich omega 3 food », « Limit salty foods »],
« protection »: [« Silk scarf at night », « Avoid heat styling »]
},
« summer »: {
…
}
}
}
*/
les erreurs classiques à éviter au quotidien pour préserver ses cheveux frisés 🛑
Entretenir ses cheveux frisés nécessite de maîtriser quelques angles sensibles pour ne pas compromettre leur santé et leur esthétique. Parmi les pièges fréquents, certaines habitudes sont particulièrement nocives. Par exemple, le démêlage sur cheveux secs est à proscrire : cela cause des cassures brutales et fragilise les boucles.
Une autre erreur notable est l’usage excessif des produits capillaires. Surcharger les cheveux de sérums, huiles ou gels mène souvent à un effet indésirable : cheveux alourdis, boucles écrasées ou texture collante. Savoir doser ces soins pour éviter l’effet carton est un art essentiel.
Dormir avec les cheveux détachés provoque quant à lui l’effritement des boucles. Attacher les cheveux en chignon haut ou en ananas, accompagné d’une taie d’oreiller en satin, protège la fibre et maintient les boucles fraîches au réveil.
❌ Se brosser les cheveux secs : casse inévitable des boucles.
❌ Appliquer trop de produit : effet gras ou carton.
❌ Oublier la protection nocturne : boucles écrasées et frisottis au réveil.
❌ Confondre bouclé et frisé : des soins mal adaptés dégradent la texture.
Erreur
Conséquence
Alternative recommandée
Démêler cheveux secs
Casse et frisottis
Démêlage doux après shampooing, avec brosse souple ou peigne en bois à dents larges
Surdosage de produits
Effet carton, cheveux lourds
Appliquer des petites quantités et répartir uniformément
Dormir cheveux détachés
Boucles écrasées et cassantes
Attacher en chignon ou ananas, taie en satin
Méconnaissance du type de boucle
Soin inadapté, cheveux abîmés
Identifier la nature et adapter les produits
coloration et coiffage : les conseils d’experts pour sublimer les cheveux frisés
Colorer les cheveux frisés est réalisable mais demande prudence et soins post-coloration intensifs. Les cheveux frisés, naturellement secs, s’altèrent plus rapidement avec les décolorations ou teintures agressives. Un coloriste professionnel de L’Oreal Professionnel saura évaluer le pigment naturel et recommander une méthode compatible.
Il est conseillé d’éviter les changements trop radicaux de teinte qui pourraient déstructurer la fibre capillaire. Se tourner vers des colorations semi-permanentes ou des shampooings colorants doux, qui corrigent les reflets sans agresser, permet de mieux préserver la vitalité des boucles.
Côté coiffage, privilégier des coiffures qui mettent en valeur la texture sans forcer sur la manipulation. Techniques comme le twist-out, le wash and go, ou les chignons protecteurs sont très adaptées. Les produits comme OUIDAD ou Kinky-Curly offrent une tenue légère tout en renforçant l’élasticité naturelle des boucles.
🎨 Opter pour une coloration réalisée en salon par un professionnel.
💇♀️ Favoriser des coiffures protectrices qui limitent la casse.
🧴 Utiliser des gels et crèmes définisseurs adaptés aux cheveux frisés.
🌿 Privilégier des produits naturels ou enrichis en ingrédients bénéfiques.
Étape
Conseil
Produit recommandé
Coloration
Respecter la nature du cheveu, éviter la décoloration excessive
L’Oreal Professionnel, shampooing colorant doux
Coiffage
Coiffures protectrices, définition légère des boucles
Quiz : Comment gérer les cheveux frisés en toute saison ?
/*
Quiz interactif sur la gestion des cheveux frisés en toutes saisons.
En pur HTML + JS, accessible, léger, sans dépendances lourdes.
Toutes les chaînes sont stockées dans une variable ‘TEXTES’ pour permettre l’internationalisation.Données inspirées des questions:
« Quels ingrédients privilégier pour nourrir ses cheveux frisés ? »
« Pourquoi éviter le brossage sur cheveux secs ? »
« Quelles coiffures protègent les boucles la nuit ? »
« Comment adapter les soins selon la saison ? »
« Coloration frisée : que faut-il éviter ? »Chaque question a 3 propositions, dont une seule est correcte.
*/const TEXTES = {
title: « Quiz : Comment gérer les cheveux frisés en toute saison ? »,
btnSubmit: « Valider »,
btnNext: « Question suivante »,
btnRestart: « Recommencer »,
resultCorrect: « Bonne réponse ! 🎉 »,
resultIncorrect: « Mauvaise réponse, essayez encore. »,
ariaSelectedAnswer: « Réponse sélectionnée »,
questions: [
{
question: « Quels ingrédients privilégier pour nourrir ses cheveux frisés ? »,
answers: [
{ text: « Huiles naturelles comme l’huile de coco ou d’argan », correct: true },
{ text: « Produits contenant beaucoup d’alcool », correct: false },
{ text: « Shampooings agressifs avec sulfates », correct: false }
],
feedback: « Les huiles naturelles nourrissent et protègent les cheveux frisés sans les assécher. »
},
{
question: « Pourquoi éviter le brossage sur cheveux secs ? »,
answers: [
{ text: « Cela n’a aucun effet, c’est pareil », correct: false },
{ text: « Pour ne pas casser les boucles et éviter les frisottis », correct: true },
{ text: « Parce que ça stimule trop le cuir chevelu », correct: false }
],
feedback: « Le brossage sur cheveux secs casse les boucles et crée des frisottis indésirables. »
},
{
question: « Quelles coiffures protègent les boucles la nuit ? »,
answers: [
{ text: « Tresse ou chignon haut », correct: true },
{ text: « Cheveux lâchés sans protection », correct: false },
{ text: « Porter un bonnet en laine rugueuse », correct: false }
],
feedback: « Tresser ou faire un chignon doux évite que les boucles s’emmêlent la nuit. »
},
{
question: « Comment adapter les soins selon la saison ? »,
answers: [
{ text: « Utiliser un masque hydratant plus riche en hiver », correct: true },
{ text: « Laver les cheveux très chaud tous les jours », correct: false },
{ text: « Changer rien, le cheveu frisé est toujours pareil », correct: false }
],
feedback: « En hiver, les cheveux frisés ont besoin de plus d’hydratation pour compenser la sécheresse. »
},
{
question: « Coloration frisée : que faut-il éviter ? »,
answers: [
{ text: « Utiliser des produits agressifs ou décolorants fréquents », correct: true },
{ text: « Faire des soins hydratants avant et après », correct: false },
{ text: « Couper régulièrement les pointes », correct: false }
],
feedback: « Les produits agressifs abîment les boucles : privilégiez les méthodes douces. »
}
]
}const container = document.getElementById(« quiz-container »);
const questionTextEl = document.getElementById(« question-text »);
const answersListEl = document.getElementById(« answers-list »);
const submitBtn = document.getElementById(« submit-btn »);
const nextBtn = document.getElementById(« next-btn »);
const restartBtn = document.getElementById(« restart-btn »);
const resultEl = document.getElementById(« result »);
const quizTitle = document.getElementById(« quiz-title »);let currentIndex = 0;
let selectedAnswerIndex = null;
let score = 0;/**
* Fonction d’affichage d’une question et ses réponses.
* @param {number} index – index de la question dans TEXTES.questions
*/
function displayQuestion(index) {
const q = TEXTES.questions[index];
questionTextEl.textContent = q.question;
answersListEl.innerHTML = « »;
selectedAnswerIndex = null;
submitBtn.disabled = true;
submitBtn.setAttribute(« aria-disabled », « true »);
resultEl.textContent = « »;
nextBtn.style.display = « none »;
restartBtn.style.display = « none »;
submitBtn.style.display = « inline-block »;// Génération des réponses avec input radio accessibles
q.answers.forEach((answer, i) => {
const li = document.createElement(« li »);
const label = document.createElement(« label »);
label.setAttribute(« for », « answer- » + i);
label.textContent = answer.text;
label.setAttribute(« tabindex », « 0 »); // permet focus clavier sur labelconst input = document.createElement(« input »);
input.type = « radio »;
input.name = « answer »;
input.id = « answer- » + i;
input.value = i;
input.setAttribute(« aria-label », answer.text);
input.addEventListener(« change », () => {
selectedAnswerIndex = i;
submitBtn.disabled = false;
submitBtn.removeAttribute(« aria-disabled »);
// Marquer pour lecteur d’écran la sélection
label.setAttribute(« aria-checked », « true »);
});
label.prepend(input);
li.appendChild(label);
answersListEl.appendChild(li);
});
questionTextEl.focus();
}/**
* Fonction qui gère la validation de la réponse choisie.
*/
function validateAnswer() {
if (selectedAnswerIndex === null) return;
const q = TEXTES.questions[currentIndex];
const selected = q.answers[selectedAnswerIndex];
submitBtn.style.display = « none »;
nextBtn.style.display = « inline-block »;// Vérification de la réponse
if (selected.correct) {
score++;
resultEl.textContent = TEXTES.resultCorrect;
resultEl.style.color = « #248f24 »; // vert
} else {
resultEl.textContent = TEXTES.resultIncorrect;
resultEl.style.color = « #b32828 »; // rouge
}// Ajout du feedback explicatif
const fb = document.createElement(« p »);
fb.className = « feedback »;
fb.textContent = q.feedback;
resultEl.appendChild(fb);// Désactive toutes les radios après validation
const radios = answersListEl.querySelectorAll(« input[type=’radio’] »);
radios.forEach(radio => radio.disabled = true);
}/**
* Passe à la prochaine question ou à l’écran final si fin.
*/
function nextQuestion() {
currentIndex++;
if (currentIndex >= TEXTES.questions.length) {
showFinalScore();
} else {
displayQuestion(currentIndex);
}
}/**
* Affiche le score final avec bouton de relance.
*/
function showFinalScore() {
questionTextEl.textContent = `Votre score : ${score} / ${TEXTES.questions.length}`;
answersListEl.innerHTML = « »;
resultEl.textContent = score === TEXTES.questions.length ?
« Félicitations, vous maîtrisez bien la gestion des cheveux frisés ! » :
« Merci d’avoir participé ! »;
resultEl.style.color = « #6b4226 »;
submitBtn.style.display = « none »;
nextBtn.style.display = « none »;
restartBtn.style.display = « inline-block »;
restartBtn.focus();
}/**
* Réinitialise le quiz
*/
function restartQuiz() {
currentIndex = 0;
score = 0;
displayQuestion(currentIndex);
}submitBtn.addEventListener(« click », () => {
validateAnswer();
});nextBtn.addEventListener(« click », () => {
nextQuestion();
});restartBtn.addEventListener(« click », () => {
restartQuiz();
});// Initialisation du quiz au chargement
quizTitle.textContent = TEXTES.title;
displayQuestion(currentIndex);
FAQ : tout savoir pour gérer ses cheveux frisés comme un pro
Quelle différence entre cheveux frisés et cheveux bouclés ? Les cheveux frisés s’enroulent en spirales serrées (tire-bouchon) tandis que les bouclés forment des ondulations souples et moins serrées.
Comment hydrater efficacement les cheveux frisés ? Utiliser des leave-in hydratants à base d’eau, aloe vera ou glycérine, et vaporiser régulièrement pour conserver la souplesse.
Peut-on colorer des cheveux frisés sans les abîmer ? Oui, à condition d’opter pour une coloration en salon, modérée et adaptée à la nature du cheveu, avec des soins post-coloration intensifs.
Quels accessoires privilégier pour protéger ses boucles la nuit ? Chouchou en soie, bonnets de nuit ou taies d’oreiller en satin, qui réduisent les frictions et conservent l’hydratation naturelle.
Comment éviter les frisottis sur cheveux frisés ? Limiter les lavages fréquents, appliquer des produits anti-frisottis comme ceux de Frizz Ease, et éviter les frottements excessifs.
Aller plus loin avec l'IA
Explorez ce sujet avec les assistants IA les plus avancés