| Autor | Zpráva | ||
|---|---|---|---|
| pacvel Profil |
#1 · Zasláno: 3. 6. 2013, 16:54:37
Dobrý den, pořeboval bych poradit (nebo napsat)se skriptem. Mám test s 10 otázkama a potřeboval bych, aby se mi pokaždé ty otázky zobrazily v náhodném pořadí. Potřeboval bych to v html. Nejlepší by to ještě bylo, z tadytoho kódu, abych to mohl lehce upravovat. Nebo napsat úplně jiný kód, ale musí tam být 10 otázek a dole ten čas a datum, který se pozastaví, když kliknu na hodnocení.
A ještě bych podotknul, že tento kód jsem nepsal já. Jsou to různě zkopírované a upravené části z jiných webů. <h1>Test 1</h1>
<form id="anketa"><label id="o1"><strong>1.Otázka:</strong></label>
<p><label> <input onclick="odpoved(1,this.value)" type="radio" name="otazka1" value="0" /> a) 0</label> <br /> <label id="dobre1"> <input onclick="odpoved(1,this.value)" type="radio" name="otazka1" value="1" /> b) 1</label> <br /> <label> <input onclick="odpoved(1,this.value)" type="radio" name="otazka1" value="0" /> c) 0</label> <br /> <label> <input onclick="odpoved(1,this.value)" type="radio" name="otazka1" value="0" /> d) 0</label></p>
<label id="o2"><strong>2.Otázka:</strong></label>
<p><label> <input onclick="odpoved(2,this.value)" type="radio" name="otazka2" value="0" /> a) 0</label> <br /> <label id="dobre2"> <input onclick="odpoved(2,this.value)" type="radio" name="otazka2" value="1" /> b) 1</label> <br /> <label> <input onclick="odpoved(2,this.value)" type="radio" name="otazka2" value="0" /> c) 0</label> <br /> <label> <input onclick="odpoved(2,this.value)" type="radio" name="otazka2" value="0" /> d) 0</label></p>
<label id="o3"><strong>3.Otázka:</strong></label>
<p><label> <input onclick="odpoved(3,this.value)" type="radio" name="otazka3" value="0" /> a) 0</label> <br /> <label> <input onclick="odpoved(3,this.value)" type="radio" name="otazka3" value="0" /> b) 0</label> <br /> <label id="dobre3"> <input onclick="odpoved(3,this.value)" type="radio" name="otazka3" value="1" /> c) 1</label> <br /> <label> <input onclick="odpoved(3,this.value)" type="radio" name="otazka3" value="0" /> d) 0</label></p>
<label id="o4"><strong>4.Otázka:</strong></label>
<p><label> <input onclick="odpoved(4,this.value)" type="radio" name="otazka4" value="0" /> a) 0</label> <br /> <label> <input onclick="odpoved(4,this.value)" type="radio" name="otazka4" value="0" /> b) 0</label> <br /> <label> <input onclick="odpoved(4,this.value)" type="radio" name="otazka4" value="0" /> c) 0</label> <br /> <label id="dobre4"> <input onclick="odpoved(4,this.value)" type="radio" name="otazka4" value="1" /> d) 1</label></p>
<label id="o5"><strong>5.Otázka:</strong></label>
<p><label id="dobre5"> <input onclick="odpoved(5,this.value)" type="radio" name="otazka5" value="1" /> a) 1</label> <br /> <label> <input onclick="odpoved(5,this.value)" type="radio" name="otazka5" value="0" /> b) 0</label> <br /> <label> <input onclick="odpoved(5,this.value)" type="radio" name="otazka5" value="0" /> c) 0</label> <br /> <label> <input onclick="odpoved(5,this.value)" type="radio" name="otazka5" value="0" /> d) 0</label></p>
<label id="o6"><strong>6.Otázka:</strong></label>
<p><label> <input onclick="odpoved(6,this.value)" type="radio" name="otazka6" value="0" /> a) 0</label> <br /> <label id="dobre6"> <input onclick="odpoved(6,this.value)" type="radio" name="otazka6" value="1" /> b) 1</label> <br /> <label> <input onclick="odpoved(6,this.value)" type="radio" name="otazka6" value="0" /> c) 0</label> <br /> <label> <input onclick="odpoved(6,this.value)" type="radio" name="otazka6" value="0" /> d) 0</label></p>
<label id="o7"><strong>7.Otázka:</strong></label>
<p><label> <input onclick="odpoved(7,this.value)" type="radio" name="otazka7" value="0" /> a) 0</label> <br /> <label> <input onclick="odpoved(7,this.value)" type="radio" name="otazka7" value="0" /> b) 0</label> <br /> <label id="dobre7"> <input onclick="odpoved(7,this.value)" type="radio" name="otazka7" value="1" /> c) 1</label> <br /> <label> <input onclick="odpoved(7,this.value)" type="radio" name="otazka7" value="0" /> d) 1</label></p>
<label id="o8"><strong>8.Otázka:</strong></label>
<p><label> <input onclick="odpoved(8,this.value)" type="radio" name="otazka8" value="0" /> a) 0</label> <br /> <label> <input onclick="odpoved(8,this.value)" type="radio" name="otazka8" value="0" /> b) 0</label> <br /> <label> <input onclick="odpoved(8,this.value)" type="radio" name="otazka8" value="0" /> c) 0</label> <br /> <label id="dobre8"> <input onclick="odpoved(8,this.value)" type="radio" name="otazka8" value="1" /> d) 1</label></p>
<label id="o9"><strong>9.Otázka:</strong></label>
<p><label> <input onclick="odpoved(9,this.value)" type="radio" name="otazka9" value="0" /> a) 0</label> <br /> <label> <input onclick="odpoved(9,this.value)" type="radio" name="otazka9" value="0" /> b) 0</label> <br /> <label id="dobre9"> <input onclick="odpoved(9,this.value)" type="radio" name="otazka9" value="1" /> c) 1</label> <br /> <label> <input onclick="odpoved(9,this.value)" type="radio" name="otazka9" value="0" /> d) 0</label></p>
<label id="o10"><strong>10.Otázka:</strong></label>
<p><label id="dobre10"> <input onclick="odpoved(10,this.value)" type="radio" name="otazka10" value="1" /> a) 1</label> <br /> <label> <input onclick="odpoved(10,this.value)" type="radio" name="otazka10" value="0" /> b) 0</label> <br /> <label> <input onclick="odpoved(10,this.value)" type="radio" name="otazka10" value="0" /> c) 0</label> <br /> <label> <input onclick="odpoved(10,this.value)" type="radio" name="otazka10" value="0" /> d) 0</label></p>
<input onclick="ukaz_hodnoceni();" type="button" name="hodnoceni" value="Hodnocení" /></form>
<script type="text/JavaScript" language="JavaScript">// <![CDATA[
// 0-3 body
var vysledek1 = "V tomto testu si neuspěl.\n"+
"Měl by sis znovu pročíst výklad a pak test zkusit znova.";
//4-8 bodů
var vysledek2 = "Ještě máš co dohánět.\n"+
"Ale není to špatný výkon.";
//9 - 10 bodů
var vysledek3 = "Gratuluju.\n"+
"V tomto testu si upěl.";
var odpovedi = new Array(0,0,0,0,0,0,0,0,0,0);
function vychozi() {
for ( var i = 0; i < document.forms[0].elements.length; i++ ) {
document.forms[0].elements[i].checked = false;
}
}
function odpoved(otazka,bodovani) {
odpovedi[otazka-1] = bodovani;
}
function ukaz_hodnoceni() {
var pocet_bodu = 0;
for(var i=0; i<10; i++){
pocet_bodu = pocet_bodu + parseInt(odpovedi[i]);
if (odpovedi[i] == 0) {
document.getElementById('o' + (i+1)).style.color = 'red';
}
else {
document.getElementById('o' + (i+1)).style.color = 'black';
}
}
var hlaska = "Váš bodový zisk v tomto testu je "+pocet_bodu+" z 10.\n";
if (pocet_bodu <10){
hlaska = hlaska + "Chybné odpovědi jsou označeny červeně.\n\n";
}
if (pocet_bodu <= 3){
alert(hlaska+vysledek1);
}
else if (pocet_bodu >= 9){
alert(hlaska+vysledek3);
}
else {
alert(hlaska+vysledek2);
}
}
// ]]></script>
<SCRIPT LANGUAGE="JavaScript">
function clock(){
dnes=new Date()
hodiny=dnes.getHours()
minuty=dnes.getMinutes()
if(minuty==1) minuty2="01";
if(minuty==2) minuty2="02";
if(minuty==3) minuty2="03";
if(minuty==4) minuty2="04";
if(minuty==5) minuty2="05";
if(minuty==6) minuty2="06";
if(minuty==7) minuty2="07";
if(minuty==8) minuty2="08";
if(minuty==9) minuty2="09";
if(minuty==0) minuty2="00";
if (minuty2<10){
minuty2="0" + minuty2
}
cas_u=hodiny+":"+minuty2+":"
nothing.hodiny.value=cas_u
timerID = setTimeout("clock()",1000)
}
var now = new Date();
var yr = now.getFullYear();
var mName = now.getMonth() + 1;
var dName = now.getDay() + 1.;
var dayNr = ((now.getDate()<10) ? "" : "")+ now.getDate();
</SCRIPT>
<Script Language="JavaScript">
<!--
if(dName==1) Day = "Neděle";
if(dName==2) Day = "Pondělí";
if(dName==3) Day = "Úterý";
if(dName==4) Day = "Středa";
if(dName==5) Day = "Čtvrtek";
if(dName==6) Day = "Pátek";
if(dName==7) Day = "Sobota";
if(mName==1) Month="1.";
if(mName==2) Month="2.";
if(mName==3) Month="3.";
if(mName==4) Month="4.";
if(mName==5) Month="5.";
if(mName==6) Month="6.";
if(mName==7) Month="7.";
if(mName==8) Month="8.";
if(mName==9) Month="9.";
if(mName==10) Month="10.";
if(mName==11) Month="11.";
if(mName==12) Month="12.";
// Aktuální datum
var todaysDate =(" "
+ Day
+ " "
+ dayNr
+ ". "
+ Month
+ " "
+ yr);
// Vepsání do stránky
document.open();
document.write(""
+todaysDate+"");
// -->
</Script>, <span id="cas">18:15:1</span><a> (po kliknutí na <i>hodnocení</i> se pozastaví)</a>
<script>
function naplnCas (){
var datum = new Date(); // prave aktualni cas
aktualniCas = datum.getHours() + ":" + datum.getMinutes() + ":" + datum.getSeconds();
// vybral jsem z data, co potrebuju a obalil znamenky, aby se to prevedlo na retezec
window.document.getElementById("cas").innerHTML = aktualniCas;
// vypocitana hodnota se vklada jako html dovnitr elemnetu, ktery ma id "cas"
}
naplnCas(); //naplneni na zacatku
window.setInterval("naplnCas()", 1000); //pravidelna zmena, 1000 je sekunda</script> |
||
| nounejm Profil * |
#2 · Zasláno: 3. 6. 2013, 17:52:24
Podle mě je to úplně spatně - uživatel si může dát zobrazit zdrojový kód a tam vidí správné odpovědi.
Potřeboval bych to v html - tady se nabízí PHP. |
||
| pacvel Profil |
#3 · Zasláno: 3. 6. 2013, 17:58:44
Tady se nabízí php - Potřebuju to v html, protože to nebude na webu, ale v mobilní aplikaci. Tam se nedá zobrazit zdrojový kód, ale můžu tam přidávat jen v html, java scriptu a CSS.
|
||
| nounejm Profil * |
#4 · Zasláno: 3. 6. 2013, 18:02:00
pacvel:
Tak to jsem nevěděl. S tím nemám zkušenosti - a člověk, který si to prohlíží v mobilu si to nemůže prohlédnout jinde? Nejde to nějak obejít? |
||
| pacvel Profil |
#5 · Zasláno: 3. 6. 2013, 18:06:53
[#4] nounejm
Nemůže, jedině na nějakym simulátoru v počítači, ale tam zdroják taky nezobrazí. |
||
| nounejm Profil * |
#6 · Zasláno: 3. 6. 2013, 18:28:01
OK - tak bych to udělal takto:
1. v javascriptu definuji pole: poleOtazek poleSpravnychOdpovedi polePodotazek(pole polí) pole by měli stále stejné indexy, ale vytvořilo by se další náhodné pole třeba (5,1,2,7,8,10,3,6,9,4) a podle těchto náhodných indexů by se všude vpisovalo javascriptem do kódu z našich polí: např.: <input onclick="odpoved(1,this.value)" by se přepsalo na <input onclick="<script type='text/JavaScript' language='JavaScript'>odpoved(document.write(nahodnePole[i])</script>,this.value)"
a takto by se všechno projelo pro i od 0 do 9 |
||
| pacvel Profil |
#7 · Zasláno: 3. 6. 2013, 18:46:15
[#6] nounejm:
Tak to jsem trochu nepochopil, nebyl by kousek kódu na ukázku? Třeba 2 otázky a konec? Prosím. |
||
| nounejm Profil * |
#8 · Zasláno: 3. 6. 2013, 20:34:20 · Upravil/a: nounejm
<h1>Test 1</h1>
<form id="anketa">
<script type='text/JavaScript' language='JavaScript'>
var nahodnePole = new Array(0, 1, 2);
function shuffle(o){
for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
return o;
}
newArray = shuffle(nahodnePole);
var poleOtazek = new Array("Co je strom?", "Co je auto?", "Co je moto?");
var poleSpravnychOdpovedi = {
0: {
a: [1],
b: [0],
c: [0],
d: [0]
},
1: {
a: [0],
b: [1],
c: [0],
d: [0]
},
2: {
a: [0],
b: [0],
c: [0],
d: [1]
}
}
var polePodotazek = {
0: {
a: ["strom"],
b: ["xsd"],
c: ["xsd"],
d: ["fghhf"]
},
1: {
a: ["xsd"],
b: ["auto"],
c: ["xsd"],
d: ["fghhf"]
},
2: {
a: ["xsd"],
b: ["xsd"],
c: ["xsd"],
d: ["moto"]
}
}
for(i=0; i<3; i++)
{
//alert('<label id="o' + (i+1) + '"><strong>' + (i+1) + '.Otázka:</strong></label>' + poleOtazek[i] + '<p><label> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["a"] + '" /> a) ' + polePodotazek[nahodnePole[i]]["a"] + '</label> <br /> <label id="dobre' + (nahodnePole[i]+1) + '"> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["b"] + '" /> b) ' + polePodotazek[nahodnePole[i]]["b"] + '</label> <br /> <label> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["c"] + '" /> c) ' + polePodotazek[nahodnePole[i]]["c"] + '</label> <br /> <label> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["d"] + '" /> d) ' + polePodotazek[nahodnePole[i]]["d"] + '</label></p>');
document.write('<label id="o' + (i+1) + '"><strong>' + (i+1) + '.Otázka:</strong></label>' + poleOtazek[nahodnePole[i]] + '<p><label> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["a"] + '" /> a) ' + polePodotazek[nahodnePole[i]]["a"] + '</label> <br /> <label id="dobre' + (nahodnePole[i]+1) + '"> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["b"] + '" /> b) ' + polePodotazek[nahodnePole[i]]["b"] + '</label> <br /> <label> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["c"] + '" /> c) ' + polePodotazek[nahodnePole[i]]["c"] + '</label> <br /> <label> <input onclick="odpoved(' + (nahodnePole[i]+1) + ',this.value)" type="radio" name="otazka' + (nahodnePole[i]+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["d"] + '" /> d) ' + polePodotazek[nahodnePole[i]]["d"] + '</label></p>');
}
</script>
<input onclick="ukaz_hodnoceni();" type="button" name="hodnoceni" value="Hodnocení" /></form>
<script type="text/JavaScript" language="JavaScript">
// <![CDATA[
// 0-3 body
var vysledek1 = "V tomto testu si neuspěl.\n"+
"Měl by sis znovu pročíst výklad a pak test zkusit znova.";
//4-8 bodů
var vysledek2 = "Ještě máš co dohánět.\n"+
"Ale není to špatný výkon.";
//9 - 10 bodů
var vysledek3 = "Gratuluju.\n"+
"V tomto testu si upěl.";
var odpovedi = new Array(0,0,0,0,0,0,0,0,0,0);
function vychozi() {
for ( var i = 0; i < document.forms[0].elements.length; i++ ) {
document.forms[0].elements[i].checked = false;
}
}
function odpoved(otazka,bodovani) {
odpovedi[otazka-1] = bodovani;
}
function ukaz_hodnoceni() {
var pocet_bodu = 0;
for(var i=0; i<3; i++){
pocet_bodu = pocet_bodu + parseInt(odpovedi[i]);
if (odpovedi[i] == 0) {
document.getElementById('o' + (i+1)).style.color = 'red';
}
else {
document.getElementById('o' + (i+1)).style.color = 'black';
}
}
var hlaska = "Váš bodový zisk v tomto testu je "+pocet_bodu+" z 10.\n";
if (pocet_bodu <10){
hlaska = hlaska + "Chybné odpovědi jsou označeny červeně.\n\n";
}
if (pocet_bodu <= 3){
alert(hlaska+vysledek1);
}
else if (pocet_bodu >= 9){
alert(hlaska+vysledek3);
}
else {
alert(hlaska+vysledek2);
}
}
// ]]></script>
<SCRIPT LANGUAGE="JavaScript">
function clock(){
dnes=new Date()
hodiny=dnes.getHours()
minuty=dnes.getMinutes()
if(minuty==1) minuty2="01";
if(minuty==2) minuty2="02";
if(minuty==3) minuty2="03";
if(minuty==4) minuty2="04";
if(minuty==5) minuty2="05";
if(minuty==6) minuty2="06";
if(minuty==7) minuty2="07";
if(minuty==8) minuty2="08";
if(minuty==9) minuty2="09";
if(minuty==0) minuty2="00";
if (minuty2<10){
minuty2="0" + minuty2
}
cas_u=hodiny+":"+minuty2+":"
nothing.hodiny.value=cas_u
timerID = setTimeout("clock()",1000)
}
var now = new Date();
var yr = now.getFullYear();
var mName = now.getMonth() + 1;
var dName = now.getDay() + 1.;
var dayNr = ((now.getDate()<10) ? "" : "")+ now.getDate();
</SCRIPT>
<Script Language="JavaScript">
<!--
if(dName==1) Day = "Neděle";
if(dName==2) Day = "Pondělí";
if(dName==3) Day = "Úterý";
if(dName==4) Day = "Středa";
if(dName==5) Day = "Čtvrtek";
if(dName==6) Day = "Pátek";
if(dName==7) Day = "Sobota";
if(mName==1) Month="1.";
if(mName==2) Month="2.";
if(mName==3) Month="3.";
if(mName==4) Month="4.";
if(mName==5) Month="5.";
if(mName==6) Month="6.";
if(mName==7) Month="7.";
if(mName==8) Month="8.";
if(mName==9) Month="9.";
if(mName==10) Month="10.";
if(mName==11) Month="11.";
if(mName==12) Month="12.";
// Aktuální datum
var todaysDate =(" "
+ Day
+ " "
+ dayNr
+ ". "
+ Month
+ " "
+ yr);
// Vepsání do stránky
document.open();
document.write(""
+todaysDate+"");
// -->
</Script>, <span id="cas">18:15:1</span><a> (po kliknutí na <i>hodnocení</i> se pozastaví)</a>
<script>
function naplnCas (){
var datum = new Date(); // prave aktualni cas
aktualniCas = datum.getHours() + ":" + datum.getMinutes() + ":" + datum.getSeconds();
// vybral jsem z data, co potrebuju a obalil znamenky, aby se to prevedlo na retezec
window.document.getElementById("cas").innerHTML = aktualniCas;
// vypocitana hodnota se vklada jako html dovnitr elemnetu, ktery ma id "cas"
}
naplnCas(); //naplneni na zacatku
window.setInterval("naplnCas()", 1000); //pravidelna zmena, 1000 je sekunda</script>a jak se teda dělají ty mobilní aplikace? Napíše se HTML a co s ním? jo měl jsem tam chybičku: for(i=0; i<3; i++)
{
document.write('<label id="o' + (i+1) + '"><strong>' + (i+1) + '.Otázka:</strong></label>' + poleOtazek[nahodnePole[i]] + '<p><label> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["a"] + '" /> a) ' + polePodotazek[nahodnePole[i]]["a"] + '</label> <br /> <label id="dobre' + (i+1) + '"> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["b"] + '" /> b) ' + polePodotazek[nahodnePole[i]]["b"] + '</label> <br /> <label> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["c"] + '" /> c) ' + polePodotazek[nahodnePole[i]]["c"] + '</label> <br /> <label> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]]["d"] + '" /> d) ' + polePodotazek[nahodnePole[i]]["d"] + '</label></p>');
} |
||
| pacvel Profil |
#9 · Zasláno: 3. 6. 2013, 21:00:54
Děkuju moc.
Já to neprogramuju přímo. Já to dělám přes online editor. www.apps-builder.com/ |
||
| nounejm Profil * |
#10 · Zasláno: 3. 6. 2013, 21:20:31 · Upravil/a: nounejm
a jaký formát z toho vznikne? Pro jaké systémy a telefony?
a zadarmo to není - jak jsem pochopil - to i kdybych si chtěl zkusit jenom něco nekomerčního, tak musím platit? |
||
| Amunak Profil |
#11 · Zasláno: 3. 6. 2013, 21:32:23
pacvel:
Na počítači by ti to ale mohl dekompilovat. Ovšem pochybuji, že by někdo něco takového dělal kvůli "hloupému" testu. |
||
| pacvel Profil |
#12 · Zasláno: 3. 6. 2013, 21:40:14
[#10] nounejm: Pošle mi to .apk soubor. Je to pro android, IPhone, Ipad, Windows phone. Pro prodávání na google play se to musí platit, ale když to je třeba jen na 1 zařízení, tak se to může stáhnout zadarmo, alespoň tak jsem to pochopil
[#11] Amunak: Tohle se bude používat hlavně na ZŠ a to pochybuju, že někdo bude umět zobrazit zdroják. A i kdyby, tak chvíli bude trvat, než se v tom vyzná, protože tam toho bude vážně hodně, ale to nestihne a ani nebue mít příležitost, bude se to asi nejspíš používat k testování žáků. |
||
| pacvel Profil |
#13 · Zasláno: 4. 6. 2013, 17:33:41
A nešlo by to ještě tak, aby se promíchali i odpovědi?
|
||
| nounejm Profil * |
#14 · Zasláno: 4. 6. 2013, 22:44:00
<h1>Test 1</h1>
<form id="anketa">
<script type='text/JavaScript' language='JavaScript'>
var nahodnePole = new Array(0, 1, 2);
function shuffle(o){
for(var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
return o;
}
newArray = shuffle(nahodnePole);
var nahodnePoleOdpovedi = new Array(0, 1, 2, 3);
newArray = shuffle(nahodnePoleOdpovedi);
var poleOtazek = new Array("Co je strom?", "Co je auto?", "Co je moto?");
var poleSpravnychOdpovedi = {
0: {
0: [1],
1: [0],
2: [0],
3: [0]
},
1: {
0: [0],
1: [1],
2: [0],
3: [0]
},
2: {
0: [0],
1: [0],
2: [0],
3: [1]
}
}
var polePodotazek = {
0: {
0: ["strom"],
1: ["xsd"],
2: ["xsd"],
3: ["fghhf"]
},
1: {
0: ["xsd"],
1: ["auto"],
2: ["xsd"],
3: ["fghhf"]
},
2: {
0: ["xsd"],
1: ["xsd"],
2: ["xsd"],
3: ["moto"]
}
}
//alert(poleSpravnychOdpovedi[nahodnePole[0]][nahodnePoleOdpovedi[0]]);
for(i=0; i<3; i++)
{
document.write('<label id="o' + (i+1) + '"><strong>' + (i+1) + '.Otázka:</strong></label>' + poleOtazek[nahodnePole[i]] + '<p><label> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]][nahodnePoleOdpovedi[0]] + '" /> a) ' + polePodotazek[nahodnePole[i]][nahodnePoleOdpovedi[0]] + '</label> <br /> <label id="dobre' + (i+1) + '"> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]][nahodnePoleOdpovedi[1]] + '" /> b) ' + polePodotazek[nahodnePole[i]][nahodnePoleOdpovedi[1]] + '</label> <br /> <label> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]][nahodnePoleOdpovedi[2]] + '" /> c) ' + polePodotazek[nahodnePole[i]][nahodnePoleOdpovedi[2]] + '</label> <br /> <label> <input onclick="odpoved(' + (i+1) + ',this.value)" type="radio" name="otazka' + (i+1) + '" value="' + poleSpravnychOdpovedi[nahodnePole[i]][nahodnePoleOdpovedi[3]] + '" /> d) ' + polePodotazek[nahodnePole[i]][nahodnePoleOdpovedi[3]] + '</label></p>');
}
</script>
<input onclick="ukaz_hodnoceni();" type="button" name="hodnoceni" value="Hodnocení" /></form>
<script type="text/JavaScript" language="JavaScript">
// <![CDATA[
// 0-3 body
var vysledek1 = "V tomto testu si neuspěl.\n"+
"Měl by sis znovu pročíst výklad a pak test zkusit znova.";
//4-8 bodů
var vysledek2 = "Ještě máš co dohánět.\n"+
"Ale není to špatný výkon.";
//9 - 10 bodů
var vysledek3 = "Gratuluju.\n"+
"V tomto testu si upěl.";
var odpovedi = new Array(0,0,0,0,0,0,0,0,0,0);
function vychozi() {
for ( var i = 0; i < document.forms[0].elements.length; i++ ) {
document.forms[0].elements[i].checked = false;
}
}
function odpoved(otazka,bodovani) {
odpovedi[otazka-1] = bodovani;
}
function ukaz_hodnoceni() {
var pocet_bodu = 0;
for(var i=0; i<3; i++){
pocet_bodu = pocet_bodu + parseInt(odpovedi[i]);
if (odpovedi[i] == 0) {
document.getElementById('o' + (i+1)).style.color = 'red';
}
else {
document.getElementById('o' + (i+1)).style.color = 'black';
}
}
var hlaska = "Váš bodový zisk v tomto testu je "+pocet_bodu+" z 10.\n";
if (pocet_bodu <10){
hlaska = hlaska + "Chybné odpovědi jsou označeny červeně.\n\n";
}
if (pocet_bodu <= 3){
alert(hlaska+vysledek1);
}
else if (pocet_bodu >= 9){
alert(hlaska+vysledek3);
}
else {
alert(hlaska+vysledek2);
}
}
// ]]></script>
<SCRIPT LANGUAGE="JavaScript">
function clock(){
dnes=new Date()
hodiny=dnes.getHours()
minuty=dnes.getMinutes()
if(minuty==1) minuty2="01";
if(minuty==2) minuty2="02";
if(minuty==3) minuty2="03";
if(minuty==4) minuty2="04";
if(minuty==5) minuty2="05";
if(minuty==6) minuty2="06";
if(minuty==7) minuty2="07";
if(minuty==8) minuty2="08";
if(minuty==9) minuty2="09";
if(minuty==0) minuty2="00";
if (minuty2<10){
minuty2="0" + minuty2
}
cas_u=hodiny+":"+minuty2+":"
nothing.hodiny.value=cas_u
timerID = setTimeout("clock()",1000)
}
var now = new Date();
var yr = now.getFullYear();
var mName = now.getMonth() + 1;
var dName = now.getDay() + 1.;
var dayNr = ((now.getDate()<10) ? "" : "")+ now.getDate();
</SCRIPT>
<Script Language="JavaScript">
<!--
if(dName==1) Day = "Neděle";
if(dName==2) Day = "Pondělí";
if(dName==3) Day = "Úterý";
if(dName==4) Day = "Středa";
if(dName==5) Day = "Čtvrtek";
if(dName==6) Day = "Pátek";
if(dName==7) Day = "Sobota";
if(mName==1) Month="1.";
if(mName==2) Month="2.";
if(mName==3) Month="3.";
if(mName==4) Month="4.";
if(mName==5) Month="5.";
if(mName==6) Month="6.";
if(mName==7) Month="7.";
if(mName==8) Month="8.";
if(mName==9) Month="9.";
if(mName==10) Month="10.";
if(mName==11) Month="11.";
if(mName==12) Month="12.";
// Aktuální datum
var todaysDate =(" "
+ Day
+ " "
+ dayNr
+ ". "
+ Month
+ " "
+ yr);
// Vepsání do stránky
document.open();
document.write(""
+todaysDate+"");
// -->
</Script>, <span id="cas">18:15:1</span><a> (po kliknutí na <i>hodnocení</i> se pozastaví)</a>
<script>
function naplnCas (){
var datum = new Date(); // prave aktualni cas
aktualniCas = datum.getHours() + ":" + datum.getMinutes() + ":" + datum.getSeconds();
// vybral jsem z data, co potrebuju a obalil znamenky, aby se to prevedlo na retezec
window.document.getElementById("cas").innerHTML = aktualniCas;
// vypocitana hodnota se vklada jako html dovnitr elemnetu, ktery ma id "cas"
}
naplnCas(); //naplneni na zacatku
window.setInterval("naplnCas()", 1000); //pravidelna zmena, 1000 je sekunda</script> |
||
| pacvel Profil |
#15 · Zasláno: 5. 6. 2013, 11:47:22
Díky, funguje tak, jak má.
|
||
|
Časová prodleva: 13 let
|
|||
0