Hey!
I am making a generator, where when you press a button (the key in the key-value pair - for instance "kedelig")
After pressen the key, another button shows up: "Find dit indre røvhul".
When you press that, it generates a word consisting of a random value from the array, that matches the key and then a name from the "names".
WHAT I WANT HELP FOR:
I want to style the the "key-buttons" in different colors, they should not all be red. This means that I need classes or id for every button. I was wondering if I can use a loop, to make the system automatically generate id's og classes for the button.
[CODE lang="javascript" highlight="87-89"]//key:value pair (eksempelvis er kedelig en "key" og Tørvetrilleren "value")
røvhulsGenerator = {
"kedelig":["Tørvetrilleren", "Knastørre", "Kampkedelige", "Surmule", "Intetsigende", "Indholdsløse", "Drøvtykkeren", "Søvndyssende"],
"tyk": ["Tykke", "Fede", "Klamme", "Koloenorme", "Kamptunge", "Elefant"],
"en fiasko": ["Fiasko", "Rendestens", "Taber", "Floppet", "Fuser", "Katestrofe","Dødsejler", "Falliterklæringen", "Nitten"],
"alt for meget": ["Frembrusende","Se-mig", "Over-gearede", "Kæmpestore", "Linselussen", ""],
"fortabt": ["Fortabte","Rendestens", "Depri", "Lost", "Ude og skide"],
"uelskelig": ["Ligegyldige", "Uelskelige", "Usexede"],
"belastende": ["Krævende", "Belastende", "Anstrengende", "Besværlige","Møjsommelige", "Trættende","Krævende"],
"svag": ["Svansede", "Svæklinge", "Taber", "Skrøbelige", "Krøblinge", "Skvattet"],
"dum": ["Dumme", "Blanke", "Småt begavede", "Enfoldige", "Uduelige","Inkompetente", "Tungnemme"],
"uempatisk": ["Selvoptagede", "Egotripper", "Overfladiske", "Ufølsomme", "Narcicist", "Hårde"],
"en svindler": ["Svindler", "Hustler", "Faker", "Snydepelsen", "Plattenslageren", "Fusker", "Storsvindler"],
"grim": ["Grimme","Utiltrækkende","Uskønne","Ulækre", "Tudegrimme", "Kiksede","Vederstyggelige", "Frastødende"],
"ubetydelig" : ["Red-verden-tyrannen", "Udskudet", "Flintrende ligegyldige", "Betydningsløse"],
"latterlig" : ["Pauseklovnen", "Grinagtige", "Skvattet"],
"ikke god nok": ["Utilstrækkelige", "Undermåleren", "Fiasko"],
"helt alene": ["Outsider", "Palle-alene-i-verden", "Ensomme", "Solo", "Mutters alene", "Venneløse"],
"et fjols": ["Fjolset", "Taber", "Klaphatten", "Idioten", "Torsken"],
"ved at gå i hundene": ["Rablende", "Nuts", "Skingrende sindsyge", "Neorotiske", "Angste"],
"for indadvendt": ["Eneboeren", "Enspænder", "Outsider", "Særlingen"],
"skrøbelig": ["Svansede", "Svæklinge", "Taber", "Skrøbelige"],
"pinlig": ["Pinlige", "Tåkrummende", "Klovnen", "Kiksede"],
"bangebuks": ["Frygtsomme", "Feje", "Uslinge", "Pivskiden", "Krysteren", "Pjokket", "Bangebuksen", "Skvattet", "Kujonen", "Kyllinge"],
"ikke glad nok": ["Sort-seern", "Surmule"],
"selvoptaget": ["Selvfede", "Navlebeskuende", "Pyntesyge", "Selvfikserede", "Ego-tripper"],
"doven": ["Dvaske", "Luddovne", "Sløve", "Dovendidrik", "Drivert", "Sofakartoflen", "Slendrianen"],
"skrøbelig":["Sensitive", "Overreagerende", "Papirtynde", "Sarte", "Vakkelvorne"],
"selvoptaget": ["Selvfede", "Navlebeskuende", "Pyntesyge", "Selvfikserede", "Ego-tripper"],
"anonym": ["Intetsigende", "Ligegyldige", "Tomme","Ligegyldige", "Farveløse", "Flade","Banale"],
"uansvarlig": ["Hovedet-under-armen", "Barnlige", "Umodne"],
"mærkelig":["Kiksede", "Utjekkede", "Crazy", "Sære", "Særegne"],
"uegnet som kæreste": ["Usexede", "Uduelige", "Uønskede"]
}
// navne som kan tilgåes uanset key
names = ["Finn", "Troels", "Ulla", "Tomse", "Sonja", "Frederikke", "Kurt", "Britt", "Søren","Olga", "Trine", "Dorte", "Vicki", "Ove", "Tove", "Heine", "Karen", "Esben", "Susanne", "Rune", "Otto", "Pelle", "Patrick", "Ruth", "Niels", "Elinor", "Pia", "Gitte", "Gunnar", "Gustav", "Lone", "Lars", "Laura", "Ingrid", "Ib", "Ida", "Caya", "Camille", "Christian", "Carl", "Renee", "Rune", "Rebecaa","Uffe", "Ulrich"]
//gemmer den valgte key (adjektivet)
let chosenAdj = ""
//skal bruges til at finde ud af om der allere er lavet en "find dit indre røvhul"- knap
let hasCreatedButton = false
//
function filt(x) {
let navnFilter = []
for (let i = 0; i < names.length; i++) {
const name = names
if (name[0] == x) {
navnFilter.push(name)
}
}
return navnFilter
}
function generate (adj){
const rndAdj = random(røvhulsGenerator[adj])
const name = random(filt(rndAdj[0]))
return rndAdj + "-" + name
}
// Funktion der sørger for ikke at give det samme out-put to gange i træk f.eks (Tørvetrilleren Troels, Tørvetrilleren Troels) DELVIST, forsættes længere nede
function generateUnique(adj, original) {
while (true) {
let g = generate(adj)
if (g != original) {
return g
}
}
}
function setup() {
// put setup code here
let t = createP("Røvhulsgenerator")
t.class("overskrift")
let z = createP("Nogle gange tænker jeg, at jeg er .....")
z.class("sætning")
for (k in røvhulsGenerator) {
const btn = createButton(k)
btn.class("adjBtn")
const x = k.slice()
btn.mousePressed(() => {
chosenAdj = x
z.elt.innerHTML = "Nogle gange tænker jeg, at jeg er " + x
if (!hasCreatedButton) {
let røvhulsknap = createButton("Find dit indre røvhul")
let røvhulsoutput = createP(generate(chosenAdj))
røvhulsknap.mousePressed(() => {
let original = røvhulsoutput.elt.innerHTML
røvhulsoutput.elt.innerHTML = generateUnique(chosenAdj, original)
})
hasCreatedButton = true
røvhulsknap.class("røvhulsknap")
}
})
}
}
[/CODE]
I am making a generator, where when you press a button (the key in the key-value pair - for instance "kedelig")
After pressen the key, another button shows up: "Find dit indre røvhul".
When you press that, it generates a word consisting of a random value from the array, that matches the key and then a name from the "names".
WHAT I WANT HELP FOR:
I want to style the the "key-buttons" in different colors, they should not all be red. This means that I need classes or id for every button. I was wondering if I can use a loop, to make the system automatically generate id's og classes for the button.
[CODE lang="javascript" highlight="87-89"]//key:value pair (eksempelvis er kedelig en "key" og Tørvetrilleren "value")
røvhulsGenerator = {
"kedelig":["Tørvetrilleren", "Knastørre", "Kampkedelige", "Surmule", "Intetsigende", "Indholdsløse", "Drøvtykkeren", "Søvndyssende"],
"tyk": ["Tykke", "Fede", "Klamme", "Koloenorme", "Kamptunge", "Elefant"],
"en fiasko": ["Fiasko", "Rendestens", "Taber", "Floppet", "Fuser", "Katestrofe","Dødsejler", "Falliterklæringen", "Nitten"],
"alt for meget": ["Frembrusende","Se-mig", "Over-gearede", "Kæmpestore", "Linselussen", ""],
"fortabt": ["Fortabte","Rendestens", "Depri", "Lost", "Ude og skide"],
"uelskelig": ["Ligegyldige", "Uelskelige", "Usexede"],
"belastende": ["Krævende", "Belastende", "Anstrengende", "Besværlige","Møjsommelige", "Trættende","Krævende"],
"svag": ["Svansede", "Svæklinge", "Taber", "Skrøbelige", "Krøblinge", "Skvattet"],
"dum": ["Dumme", "Blanke", "Småt begavede", "Enfoldige", "Uduelige","Inkompetente", "Tungnemme"],
"uempatisk": ["Selvoptagede", "Egotripper", "Overfladiske", "Ufølsomme", "Narcicist", "Hårde"],
"en svindler": ["Svindler", "Hustler", "Faker", "Snydepelsen", "Plattenslageren", "Fusker", "Storsvindler"],
"grim": ["Grimme","Utiltrækkende","Uskønne","Ulækre", "Tudegrimme", "Kiksede","Vederstyggelige", "Frastødende"],
"ubetydelig" : ["Red-verden-tyrannen", "Udskudet", "Flintrende ligegyldige", "Betydningsløse"],
"latterlig" : ["Pauseklovnen", "Grinagtige", "Skvattet"],
"ikke god nok": ["Utilstrækkelige", "Undermåleren", "Fiasko"],
"helt alene": ["Outsider", "Palle-alene-i-verden", "Ensomme", "Solo", "Mutters alene", "Venneløse"],
"et fjols": ["Fjolset", "Taber", "Klaphatten", "Idioten", "Torsken"],
"ved at gå i hundene": ["Rablende", "Nuts", "Skingrende sindsyge", "Neorotiske", "Angste"],
"for indadvendt": ["Eneboeren", "Enspænder", "Outsider", "Særlingen"],
"skrøbelig": ["Svansede", "Svæklinge", "Taber", "Skrøbelige"],
"pinlig": ["Pinlige", "Tåkrummende", "Klovnen", "Kiksede"],
"bangebuks": ["Frygtsomme", "Feje", "Uslinge", "Pivskiden", "Krysteren", "Pjokket", "Bangebuksen", "Skvattet", "Kujonen", "Kyllinge"],
"ikke glad nok": ["Sort-seern", "Surmule"],
"selvoptaget": ["Selvfede", "Navlebeskuende", "Pyntesyge", "Selvfikserede", "Ego-tripper"],
"doven": ["Dvaske", "Luddovne", "Sløve", "Dovendidrik", "Drivert", "Sofakartoflen", "Slendrianen"],
"skrøbelig":["Sensitive", "Overreagerende", "Papirtynde", "Sarte", "Vakkelvorne"],
"selvoptaget": ["Selvfede", "Navlebeskuende", "Pyntesyge", "Selvfikserede", "Ego-tripper"],
"anonym": ["Intetsigende", "Ligegyldige", "Tomme","Ligegyldige", "Farveløse", "Flade","Banale"],
"uansvarlig": ["Hovedet-under-armen", "Barnlige", "Umodne"],
"mærkelig":["Kiksede", "Utjekkede", "Crazy", "Sære", "Særegne"],
"uegnet som kæreste": ["Usexede", "Uduelige", "Uønskede"]
}
// navne som kan tilgåes uanset key
names = ["Finn", "Troels", "Ulla", "Tomse", "Sonja", "Frederikke", "Kurt", "Britt", "Søren","Olga", "Trine", "Dorte", "Vicki", "Ove", "Tove", "Heine", "Karen", "Esben", "Susanne", "Rune", "Otto", "Pelle", "Patrick", "Ruth", "Niels", "Elinor", "Pia", "Gitte", "Gunnar", "Gustav", "Lone", "Lars", "Laura", "Ingrid", "Ib", "Ida", "Caya", "Camille", "Christian", "Carl", "Renee", "Rune", "Rebecaa","Uffe", "Ulrich"]
//gemmer den valgte key (adjektivet)
let chosenAdj = ""
//skal bruges til at finde ud af om der allere er lavet en "find dit indre røvhul"- knap
let hasCreatedButton = false
//
function filt(x) {
let navnFilter = []
for (let i = 0; i < names.length; i++) {
const name = names
if (name[0] == x) {
navnFilter.push(name)
}
}
return navnFilter
}
function generate (adj){
const rndAdj = random(røvhulsGenerator[adj])
const name = random(filt(rndAdj[0]))
return rndAdj + "-" + name
}
// Funktion der sørger for ikke at give det samme out-put to gange i træk f.eks (Tørvetrilleren Troels, Tørvetrilleren Troels) DELVIST, forsættes længere nede
function generateUnique(adj, original) {
while (true) {
let g = generate(adj)
if (g != original) {
return g
}
}
}
function setup() {
// put setup code here
let t = createP("Røvhulsgenerator")
t.class("overskrift")
let z = createP("Nogle gange tænker jeg, at jeg er .....")
z.class("sætning")
for (k in røvhulsGenerator) {
const btn = createButton(k)
btn.class("adjBtn")
const x = k.slice()
btn.mousePressed(() => {
chosenAdj = x
z.elt.innerHTML = "Nogle gange tænker jeg, at jeg er " + x
if (!hasCreatedButton) {
let røvhulsknap = createButton("Find dit indre røvhul")
let røvhulsoutput = createP(generate(chosenAdj))
røvhulsknap.mousePressed(() => {
let original = røvhulsoutput.elt.innerHTML
røvhulsoutput.elt.innerHTML = generateUnique(chosenAdj, original)
})
hasCreatedButton = true
røvhulsknap.class("røvhulsknap")
}
})
}
}
[/CODE]