-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcatchwords.js
49 lines (39 loc) · 1.72 KB
/
catchwords.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
document.addEventListener("DOMContentLoaded", function() {
// Seleziona tutti i paragrafi all'interno dell'elemento con id "content"
var paragrafi = document.querySelectorAll("#content p");
// Crea un oggetto per memorizzare le parole chiave divise per classe
var parolePerClasse = {};
// Itera sui paragrafi
paragrafi.forEach(function(paragrafo) {
// Seleziona tutti i tag span all'interno del paragrafo corrente
var spans = paragrafo.querySelectorAll("span");
// Itera sui tag span e aggiungi le parole chiave all'oggetto
spans.forEach(function(span) {
var classe = span.className;
var parola = span.textContent;
// Se la classe non esiste nell'oggetto, creala come un array vuoto
if (!parolePerClasse[classe]) {
parolePerClasse[classe] = [];
}
// Aggiungi la parola chiave all'array corrispondente alla classe
parolePerClasse[classe].push(parola);
});
});
// Seleziona l'elemento con id "collezione"
var collezioneElement = document.getElementById("collezione");
// Itera sull'oggetto e crea un elenco per ogni classe
for (var classe in parolePerClasse) {
if (parolePerClasse.hasOwnProperty(classe)) {
// Crea un elenco
var elenco = document.createElement("ul");
// Aggiungi ogni parola chiave come elemento della lista
parolePerClasse[classe].forEach(function(parola) {
var elementoLista = document.createElement("li");
elementoLista.textContent = parola;
elenco.appendChild(elementoLista);
});
// Aggiungi l'elenco alla sezione "collezione"
collezioneElement.appendChild(elenco);
}
}
});