Widget:Konjugationsklasse ermitteln: Unterschied zwischen den Versionen

Aus KGS-Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 20: Zeile 20:
let inf = document.querySelector('#input-inf').value
let inf = document.querySelector('#input-inf').value
let praes = document.querySelector('#input-praes').value
let praes = document.querySelector('#input-praes').value
let perf = document.querySelector('#input-perf').value
node('infe').style = null
node('infe').style = null
node('a').style = null
node('a').style = null
Zeile 36: Zeile 37:
         return
         return
     }
     }
document.querySelector('#perf-stamm').innerHTML = perf.slice(0,-1) + '-'
if (inf.endsWith('are')) {
if (inf.endsWith('are')) {
       edge('L-inf-a').style = "stroke: red; fill: none;"
       edge('L-inf-a').style = "stroke: red; fill: none;"
node('a').style = "fill: red;"
node('a').style = "fill: red;"
document.querySelector('#praes-stamm').innerHTML = inf.slice(0,-2) + '-'
document.querySelector('#konj').innerHTML = 'a-Konjugation'
document.querySelector('#futur').innerHTML = 'bo-bi-bu'
     }
     }
if (inf.endsWith('ire')) {
if (inf.endsWith('ire')) {
       edge('L-inf-i').style = "stroke: red; fill: none;"
       edge('L-inf-i').style = "stroke: red; fill: none;"
node('i').style = "fill: red;"
node('i').style = "fill: red;"
document.querySelector('#praes-stamm').innerHTML = praes.slice(0,-1) + '-'
document.querySelector('#konj').innerHTML = 'i-Konjugation'
document.querySelector('#futur').innerHTML = 'Kameeeeel'
     }
     }
if (inf.endsWith('ere')) {
if (inf.endsWith('ere')) {
       edge('L-inf-infe').style = "stroke: red; fill: none;"
       edge('L-inf-infe').style = "stroke: red; fill: none;"
node('infe').style = "fill: red;"
node('infe').style = "fill: red;"
document.querySelector('#praes-stamm').innerHTML = praes.slice(0,-1) + '-'
         if (praes.endsWith('eo')) {
         if (praes.endsWith('eo')) {
           edge('L-infe-e').style = "stroke: red; fill: none;"
           edge('L-infe-e').style = "stroke: red; fill: none;"
    node('e').style = "fill: red;"
    node('e').style = "fill: red;"
document.querySelector('#konj').innerHTML = 'e-Konjugation'
document.querySelector('#futur').innerHTML = 'bo-bi-bu'
         } else if (praes.endsWith('io')) {
         } else if (praes.endsWith('io')) {
           edge('L-infe-ki').style = "stroke: red; fill: none;"
           edge('L-infe-ki').style = "stroke: red; fill: none;"
    node('ki').style = "fill: red;"
    node('ki').style = "fill: red;"
document.querySelector('#konj').innerHTML = 'konsonantische Konjugation mit i-Erweiterung'
document.querySelector('#futur').innerHTML = 'Kameeeeel'
         } else {
         } else {
           edge('L-infe-ko').style = "stroke: red; fill: none;"
           edge('L-infe-ko').style = "stroke: red; fill: none;"
    node('ko').style = "fill: red;"
    node('ko').style = "fill: red;"
document.querySelector('#konj').innerHTML = 'konsonantische Konjugation'
document.querySelector('#futur').innerHTML = 'Kameeeeel'
         }
         }
     }
     }

Version vom 11. November 2024, 22:21 Uhr

Probier es selbst aus! Gib hier die Lernformen eines Verbs ein und ermittle die Konjugationsklasse!

<p>
	<label for="input-inf">Infinitiv:</label><input type="text" placeholder="vocare" id="input-inf" oninput="parseData()"/>
	<label for="input-praes">1. Pers. Sing. Präsens:</label><input type="text" placeholder="voco" id="input-praes" oninput="parseData()"/>
	<label for="input-perf">1. Pers. Sing. Perfekt:</label><input type="text" placeholder="vocavi" id="input-perf" oninput="parseData()"/>
	<label for="input-ppp">PPP:</label><input type="text" placeholder="vocatum" id="input-ppp" oninput="parseData()"/>
</p>

<script>
function edge(id) {
	return document.querySelector('.edgePath[id*=' + id + '] path')
}

function node(id) {
	return document.querySelector('.node[id*=-' + id + '-] rect')
}

function parseData() {
	let inf = document.querySelector('#input-inf').value
	let praes = document.querySelector('#input-praes').value
	let perf = document.querySelector('#input-perf').value
	node('infe').style = null
	node('a').style = null
	node('e').style = null
	node('i').style = null
	node('ko').style = null
	node('ki').style = null
    let edgecolor = (inf == '' || praes ==  '') ? 'black' : 'lightgray'
	edge('L-inf-a').style = "stroke: " + edgecolor + "; fill: none;"
	edge('L-inf-i').style = "stroke: " + edgecolor + "; fill: none;"
	edge('L-inf-infe').style = "stroke: " + edgecolor + "; fill: none;"
	edge('L-infe-e').style = "stroke: " + edgecolor + "; fill: none;"
	edge('L-infe-ko').style = "stroke: " + edgecolor + "; fill: none;"
	edge('L-infe-ki').style = "stroke: " + edgecolor + "; fill: none;"
    if (inf == '' || praes ==  '') {
        return
    }
	document.querySelector('#perf-stamm').innerHTML = perf.slice(0,-1) + '-'
	if (inf.endsWith('are')) {
       	edge('L-inf-a').style = "stroke: red; fill: none;"
		node('a').style = "fill: red;"
		document.querySelector('#praes-stamm').innerHTML = inf.slice(0,-2) + '-'
		document.querySelector('#konj').innerHTML = 'a-Konjugation'
		document.querySelector('#futur').innerHTML = 'bo-bi-bu'
    }
	if (inf.endsWith('ire')) {
       	edge('L-inf-i').style = "stroke: red; fill: none;"
		node('i').style = "fill: red;"
		document.querySelector('#praes-stamm').innerHTML = praes.slice(0,-1) + '-'
		document.querySelector('#konj').innerHTML = 'i-Konjugation'
		document.querySelector('#futur').innerHTML = 'Kameeeeel'
    }
	if (inf.endsWith('ere')) {
       	edge('L-inf-infe').style = "stroke: red; fill: none;"
		node('infe').style = "fill: red;"
		document.querySelector('#praes-stamm').innerHTML = praes.slice(0,-1) + '-'
        if (praes.endsWith('eo')) {
       	    edge('L-infe-e').style = "stroke: red; fill: none;"
		    node('e').style = "fill: red;"
			document.querySelector('#konj').innerHTML = 'e-Konjugation'
			document.querySelector('#futur').innerHTML = 'bo-bi-bu'
        } else if (praes.endsWith('io')) {
       	    edge('L-infe-ki').style = "stroke: red; fill: none;"
		    node('ki').style = "fill: red;"
			document.querySelector('#konj').innerHTML = 'konsonantische Konjugation mit i-Erweiterung'
			document.querySelector('#futur').innerHTML = 'Kameeeeel'
        } else {
       	    edge('L-infe-ko').style = "stroke: red; fill: none;"
		    node('ko').style = "fill: red;"
			document.querySelector('#konj').innerHTML = 'konsonantische Konjugation'
			document.querySelector('#futur').innerHTML = 'Kameeeeel'
        }
    }
    
}
</script>