Autor Zpráva
pacvel
Profil
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&aacute;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&aacute;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&aacute;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&aacute;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&aacute;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&aacute;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&aacute;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&aacute;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&aacute;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&aacute;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&iacute;" /></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 *
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
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 *
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
[#4] nounejm
Nemůže, jedině na nějakym simulátoru v počítači, ale tam zdroják taky nezobrazí.
nounejm
Profil *
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
[#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 *
<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&aacute;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&aacute;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&iacute;" /></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>
pokud se to bude dělat pro deset otázek tak se musí ve funkci ukaz_hodnoceni() změnit for(var i=0; i<3; i++) ta trojka za desítku
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&aacute;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
Děkuju moc.
Já to neprogramuju přímo. Já to dělám přes online editor. www.apps-builder.com/
nounejm
Profil *
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
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
[#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
A nešlo by to ještě tak, aby se promíchali i odpovědi?
nounejm
Profil *
<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&aacute;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&iacute;" /></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
Díky, funguje tak, jak má.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: