diff options
Diffstat (limited to 'nem')
-rw-r--r-- | nem/test/1/naredi.html | 28 | ||||
-rw-r--r-- | nem/test/1/priprava.html | 31 | ||||
-rw-r--r-- | nem/test/1/priprava.js | 96 |
3 files changed, 155 insertions, 0 deletions
diff --git a/nem/test/1/naredi.html b/nem/test/1/naredi.html new file mode 100644 index 0000000..e266fe2 --- /dev/null +++ b/nem/test/1/naredi.html @@ -0,0 +1,28 @@ +<!DOCTYPE html> +<html> + <head> + <meta charset=UTF-8 /> + <title> + priprava na test#1 + </title> + <script src=priprava.js></script> + </head> + <body> + <h1> + naredi svoj vprašalnik + </h1> + <p> + odgovore se preverja ne ozirajoče se na velike in male črke. vprašalnik + se avtomatsko shrani v povezavo spodaj. + </p> + <div id=vpr> + </div> + <hr> + <input type=button value="dodaj vprašanje" onclick=dodaj(); /> + <a id=urejevalnik href=#>povezava do te seje urejevalnika</a> + <a id=vprasalnik href=priprava.html# > + povezava do tega narejenega vprašalnika + </a> + <br> + </body> +</html> diff --git a/nem/test/1/priprava.html b/nem/test/1/priprava.html new file mode 100644 index 0000000..f42cd4a --- /dev/null +++ b/nem/test/1/priprava.html @@ -0,0 +1,31 @@ +<!DOCTYPE html> +<html> + <head> + <meta charset=UTF-8 /> + <title> + priprava na test#1 + </title> + <style> + .falsch { + background: #CF4625; + } + .richtig { + background: #46CF25; + } + </style> + <script src=priprava.js></script> + </head> + <body> + <h1> + priprava na test#1 + </h1> + <div id=vpr> + </div> + <hr> + <input type=button onclick=preveri(); value=preveri /> + <input type=button onclick=pokaziskrij(); value="pokazi/skrij odgovore" /> + <a href=naredi.html id=naredilink>odpri ta vprašalnik v urejevalniku</a> + <h3 id=stat> + </h3> + </body> +</html> diff --git a/nem/test/1/priprava.js b/nem/test/1/priprava.js new file mode 100644 index 0000000..518406c --- /dev/null +++ b/nem/test/1/priprava.js @@ -0,0 +1,96 @@ +document.addEventListener("DOMContentLoaded", () => { + pripraviDokument(); +}); +function pripraviDokument() { + var data; + try { + data = JSON.parse(decodeURIComponent(window.location.hash.substring(1))); + } catch (e) { + data = {vpr: []}; + } + var el = document.getElementById("vpr"); + el.innerHTML = ""; + for (const vpr of data.vpr) { + var vprdiv = document.createElement("div"); + vprdiv.classList = "vpr"; + if (window.location.pathname.endsWith("priprava.html")) { + vprdiv.innerText = vpr.v+" "; + var odg = document.createElement("input"); + odg.dataset.odg = vpr.o; + var odgspan = document.createElement("span"); + odgspan.hidden = true; + odgspan.classList = "odgspan"; + odgspan.innerText = " "+vpr.o; + vprdiv.appendChild(odg); + vprdiv.appendChild(odgspan); + } else { + var vprinput = document.createElement("input"); + vprinput.value = vpr.v; + vprinput.onchange = naredichange; + var odg = document.createElement("input"); + odg.value = vpr.o; + odg.onchange = naredichange; + vprdiv.appendChild(vprinput); + vprdiv.appendChild(odg) + } + el.appendChild(vprdiv); + } + if (window.location.pathname.endsWith("priprava.html")) { + document.getElementById("naredilink").href = + "naredi.html"+window.location.hash; + } else { + naredichange(); + } +} +function preveri() { + var el = document.getElementById("stat"); + var els = document.getElementsByClassName("vpr"); + var richtig = 0; + var falsch = 0; + for (const vpr of els) { + var odg = vpr.children[0]; + if (odg.dataset.odg.toLowerCase() == odg.value.toLowerCase()) { + odg.classList = "richtig"; + richtig++; + } else { + odg.classList = "falsch"; + falsch++; + } + } + el.innerText = richtig + "/" + (richtig+falsch) + " pravilnih"; +} +function pokaziskrij() { + var els = document.getElementsByClassName("odgspan"); + for (const el of els) { + el.hidden = !el.hidden; + } +} + +function dodaj() { + var vprs = document.getElementById("vpr"); + var div = document.createElement("div"); + div.classList = "vpr"; + var vpr = document.createElement("input"); + vpr.onchange = naredichange; + var odg = document.createElement("input"); + odg.onchange = naredichange; + div.appendChild(vpr); + div.appendChild(odg); + vprs.appendChild(div); +} + +function naredichange() { + var vprs = document.getElementById("vpr").children; + data = {vpr: []}; + for (const vpr of vprs) { + vprobj = { + v: vpr.children[0].value, + o: vpr.children[1].value + } + data.vpr.push(vprobj); + } + var datastr = (JSON.stringify(data)); + document.getElementById("urejevalnik").href = "#"+datastr; + document.getElementById("vprasalnik").href = "priprava.html#"+datastr; + window.location.hash = "#"+datastr; +} |