@@ -56,15 +56,15 @@
+10
X
-
O autoru
-
Zovem se Goran Basic imam 19 godina i student sam ITS – Visoke škole strukovnih studija za informacione tehnologije.
-
Ovaj kviz je nastao iz lične radoznalosti i želje da znanje stečeno na fakultetu primenim u praksi.
-
Kroz izradu projekta radio sam na logici pitanja, bodovanju i funkcionalnosti aplikacije, koristeći HTML, CSS i JavaScript.
-
Cilj mi je bio da kroz samostalni rad dodatno unapredim veštine web programiranja i testiram sopstvene ideje.
+
关于作者
+
我叫Goran Basic,19岁,是ITS - 高等信息技术职业学院的学生。
+
这个测验是出于个人好奇心和将在大学学到的知识应用于实践的愿望而创建的。
+
在项目开发过程中,我使用HTML、CSS和JavaScript研究了问题逻辑、评分和应用功能。
+
我的目标是通过独立工作进一步提高我的Web编程技能并测试我自己的想法。
-
+
diff --git a/oblasti/geografija/geografija.js b/oblasti/geografija/geografija.js
index 1478cbe..7808425 100644
--- a/oblasti/geografija/geografija.js
+++ b/oblasti/geografija/geografija.js
@@ -23,8 +23,8 @@ const unesi_username = document.getElementById('unesi_username');
const timeline_container = document.getElementById('timeline-container');
-proveri.innerText = 'Proveri';
-sledece.innerText = 'Sledece➜';
+proveri.innerText = '检查答案';
+sledece.innerText = '下一题➜';
let bodovi = 0;
let pitanje = 0;
let tacan_odgovor = 0;
@@ -47,7 +47,7 @@ pocni_kviz.onclick = () => {
unesi_username.style.animation = 'none';
void unesi_username.offsetWidth;
unesi_username.style.animation = 'shake 1s 1';
- unesi_username.innerText = 'Morate uneti username!'
+ unesi_username.innerText = '请输入用户名!'
return;
}
moj_username = inputUsername;
@@ -63,8 +63,8 @@ pocni_kviz.onclick = () => {
igrac.style.display = 'flex';
slicica.style.margin ='10px auto';
- bodovi_tekst.innerText = `Bodovi: ${bodovi}`;
- igrac.innerText = `Igrac : ${moj_username}`;
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+ igrac.innerText = `玩家:${moj_username}`;
unesi_username.innerText = '';
postaviPitanje();
@@ -75,36 +75,36 @@ pocni_kviz.onclick = () => {
postaviPitanje = () => {
pitanje++;
if(pitanje === 1){
- naslov.innerText = `${pitanje}. Koja je najveća država na svetu po površini?`;
- prvo_tekst.innerText ='A) Kina';
- drugo_tekst.innerText = 'B) Kanada';
- trece_tekst.innerText = 'C) Rusija';
- cetvrto_tekst.innerText = 'D) SAD';
+ naslov.innerText = `${pitanje}. 哪个国家是世界上面积最大的国家?`;
+ prvo_tekst.innerText ='A) 中国';
+ drugo_tekst.innerText = 'B) 加拿大';
+ trece_tekst.innerText = 'C) 俄罗斯';
+ cetvrto_tekst.innerText = 'D) 美国';
} else if(pitanje === 2){
- naslov.innerText = `${pitanje}. Koja reka je najduža na svetu?`;
- prvo_tekst.innerText = 'A) Nil';
- drugo_tekst.innerText = 'B) Amazonska';
- trece_tekst.innerText = 'C) Misisipi';
- cetvrto_tekst.innerText = 'D) Jangce';
+ naslov.innerText = `${pitanje}. 哪条河流是世界上最长的河流?`;
+ prvo_tekst.innerText = 'A) 尼罗河';
+ drugo_tekst.innerText = 'B) 亚马逊河';
+ trece_tekst.innerText = 'C) 密西西比河';
+ cetvrto_tekst.innerText = 'D) 长江';
} else if(pitanje === 3){
- naslov.innerText = `${pitanje}. Koja planina je najviša na svetu?`;
+ naslov.innerText = `${pitanje}. 哪座山峰是世界上最高的山峰?`;
prvo_tekst.innerText = 'A) K2';
- drugo_tekst.innerText = 'B) Kangchenjunga';
- trece_tekst.innerText = 'C) Mount Everest';
- cetvrto_tekst.innerText = 'D) Lhotse';
+ drugo_tekst.innerText = 'B) 干城章嘉峰';
+ trece_tekst.innerText = 'C) 珠穆朗玛峰';
+ cetvrto_tekst.innerText = 'D) 洛子峰';
} else if(pitanje === 4){
- naslov.innerText = `${pitanje}. Koji okean je najveći po površini?`;
- prvo_tekst.innerText = 'A) Atlantski';
- drugo_tekst.innerText = 'B) Tihi';
- trece_tekst.innerText = 'C) Indijski';
- cetvrto_tekst.innerText = 'D) Severni ledeni';
+ naslov.innerText = `${pitanje}. 哪个大洋是世界上面积最大的大洋?`;
+ prvo_tekst.innerText = 'A) 大西洋';
+ drugo_tekst.innerText = 'B) 太平洋';
+ trece_tekst.innerText = 'C) 印度洋';
+ cetvrto_tekst.innerText = 'D) 北冰洋';
} else if(pitanje === 5){
- naslov.innerText = `${pitanje}. Koja država ima najviše stanovnika?`;
- prvo_tekst.innerText = 'A) Indija';
- drugo_tekst.innerText = 'B) Kina ';
- trece_tekst.innerText = 'C) SAD';
- cetvrto_tekst.innerText = 'D) Indonezija';
+ naslov.innerText = `${pitanje}. 哪个国家是世界上人口最多的国家?`;
+ prvo_tekst.innerText = 'A) 印度';
+ drugo_tekst.innerText = 'B) 中国';
+ trece_tekst.innerText = 'C) 美国';
+ cetvrto_tekst.innerText = 'D) 印度尼西亚';
}
[prvo, drugo, trece, cetvrto].forEach(r => r.checked = false);
document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
@@ -166,21 +166,77 @@ getOpcije = (pitanje) => {
}
}
+const snimiPogresnoPitanje = (pitanjeBroj, korisnikovOdgovor) => {
+ const pitanjaData = {
+ 1: {
+ pitanje: '哪个国家是世界上面积最大的国家?',
+ opcije: ['A) 中国', 'B) 加拿大', 'C) 俄罗斯', 'D) 美国'],
+ tacanOdgovor: 'C) 俄罗斯'
+ },
+ 2: {
+ pitanje: '哪条河流是世界上最长的河流?',
+ opcije: ['A) 尼罗河', 'B) 亚马逊河', 'C) 密西西比河', 'D) 长江'],
+ tacanOdgovor: 'A) 尼罗河'
+ },
+ 3: {
+ pitanje: '哪座山峰是世界上最高的山峰?',
+ opcije: ['A) K2', 'B) 干城章嘉峰', 'C) 珠穆朗玛峰', 'D) 洛子峰'],
+ tacanOdgovor: 'C) 珠穆朗玛峰'
+ },
+ 4: {
+ pitanje: '哪个大洋是世界上面积最大的大洋?',
+ opcije: ['A) 大西洋', 'B) 太平洋', 'C) 印度洋', 'D) 北冰洋'],
+ tacanOdgovor: 'B) 太平洋'
+ },
+ 5: {
+ pitanje: '哪个国家是世界上人口最多的国家?',
+ opcije: ['A) 印度', 'B) 中国', 'C) 美国', 'D) 印度尼西亚'],
+ tacanOdgovor: 'A) 印度'
+ }
+ };
+
+ const data = pitanjaData[pitanjeBroj];
+ if (!data) return;
+
+ const pogresnoPitanje = {
+ id: `geografija_${pitanjeBroj}_${Date.now()}`,
+ kategorija: '地理',
+ pitanje: data.pitanje,
+ opcije: data.opcije,
+ korisnikovOdgovor: korisnikovOdgovor,
+ tacanOdgovor: data.tacanOdgovor,
+ vreme: new Date().toISOString()
+ };
+
+ let pogresnaPitanja = JSON.parse(localStorage.getItem('wrongQuestions') || '[]');
+
+ const postojece = pogresnaPitanja.find(p =>
+ p.kategorija === '地理' && p.pitanje === data.pitanje
+ );
+
+ if (!postojece) {
+ pogresnaPitanja.push(pogresnoPitanje);
+ localStorage.setItem('wrongQuestions', JSON.stringify(pogresnaPitanja));
+ }
+};
+
proveri.onclick = () => {
const opcije = getOpcije(pitanje);
const izabrana = opcije.find(opt => opt.el.checked);
if(!izabrana){
tacno_netacno.style.color = '#374151'
- tacno_netacno.innerText = 'Morate nešto da izaberete!';
+ tacno_netacno.innerText = '请选择一个答案!';
return;
}
proveri.style.display = 'none';
sledece.style.display = 'block';
+ const korisnikovOdgovor = izabrana.el.nextElementSibling.innerText;
+
if(izabrana.tacno){
- tacno_netacno.innerText = `Bravo ${moj_username} tacan odgovor!`;
+ tacno_netacno.innerText = `恭喜 ${moj_username},回答正确!`;
tacno_netacno.style.color = '#22C55E';
bodovi += 10;
@@ -193,17 +249,19 @@ proveri.onclick = () => {
wrapper.style.animation = 'tacanOdgovor 1s 1';
tacan_odgovor ++;
} else {
- tacno_netacno.innerText = 'Netacan odgovor!';
+ tacno_netacno.innerText = '回答错误!';
tacno_netacno.style.color = '#EF4444';
+ snimiPogresnoPitanje(pitanje, korisnikovOdgovor);
+
wrapper.style.animation = 'none';
void wrapper.offsetWidth;
wrapper.style.animation = 'netacanOdgovor 1s 1';
}
- bodovi_tekst.innerText = `Bodovi: ${bodovi}`;
+ bodovi_tekst.innerText = `分数:${bodovi}`;
if(pitanje === 5){
- sledece.innerText = 'Kraj kviza';
+ sledece.innerText = '测验结束';
sledece.onclick = krajKviza;
}
};
@@ -211,11 +269,11 @@ krajKviza = () => {
let procenat = (tacan_odgovor / pitanje) * 100;
procenat = (procenat.toFixed(2));
if(bodovi === (pitanje * 10)) {
- naslov.innerHTML = `Cestitam ${moj_username} kviz je završen!
Na sva pitanja ste dali tacan odgovor!
Broj bodova: ${bodovi}/${pitanje*10}
${procenat}%
`;
+ naslov.innerHTML = `恭喜 ${moj_username},测验完成!
所有问题都回答正确!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
}else if(bodovi === 0){
- naslov.innerHTML = `${moj_username} kviz je završen!
Ni na jedno pitanje niste dali tacan odgovor!
Broj bodova: ${bodovi}/${pitanje*10}
${procenat}%
`;
+ naslov.innerHTML = `${moj_username},测验完成!
很遗憾,没有答对任何题目!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
}else {
- naslov.innerHTML = `
Cestitam ${moj_username} kviz je završen!
Broj bodova: ${bodovi}/${pitanje*10}
${procenat}%
`;
+ naslov.innerHTML = `
恭喜 ${moj_username},测验完成!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
}
@@ -231,7 +289,7 @@ krajKviza = () => {
tacno_netacno.style.color = '#111827'
- tacno_netacno.innerHTML = '
⬅Vrati se na pocetnu';
+ tacno_netacno.innerHTML = '
⬅返回首页';
vrati.remove();
}
diff --git a/oblasti/hemija/hemija.html b/oblasti/hemija/hemija.html
new file mode 100644
index 0000000..8404103
--- /dev/null
+++ b/oblasti/hemija/hemija.html
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
知识测验
+
+
+
+
+
+
+
+
+
+
+
+ +10
+ ⬅返回首页
+
+
+
+
+
+
+
+
+
+
X
+
关于作者
+
我叫Goran Basic,19岁,是ITS - 高等信息技术职业学院的学生。
+
这个测验是出于个人好奇心和将在大学学到的知识应用于实践的愿望而创建的。
+
在项目开发过程中,我使用HTML、CSS和JavaScript研究了问题逻辑、评分和应用功能。
+
我的目标是通过独立工作进一步提高我的Web编程技能并测试我自己的想法。
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/oblasti/hemija/hemija.js b/oblasti/hemija/hemija.js
new file mode 100644
index 0000000..65bcf89
--- /dev/null
+++ b/oblasti/hemija/hemija.js
@@ -0,0 +1,286 @@
+
+const wrapper = document.getElementById('wrapper')
+const pocni_kviz = document.getElementById("pocni_kviz");
+const username = document.getElementById('username');
+const naslov = document.getElementById('naslov');
+const bodovi_tekst = document.getElementById('bodovi');
+const prvo = document.getElementById('prvo');
+const drugo = document.getElementById('drugo');
+const trece = document.getElementById('trece');
+const cetvrto = document.getElementById('cetvrto');
+const prvo_tekst = document.getElementById('prvo_tekst');
+const drugo_tekst = document.getElementById('drugo_tekst');
+const trece_tekst = document.getElementById('trece_tekst');
+const cetvrto_tekst = document.getElementById('cetvrto_tekst');
+const proveri = document.getElementById('proveri');
+const sledece = document.getElementById('sledece');
+const tacno_netacno = document.getElementById('tacno_netacno');
+const vrati = document.getElementById('vrati');
+const slicica = document.getElementById('slicica');
+const dodatak_bodova = document.getElementById('dodatak_bodova');
+const igrac = document.getElementById('igrac');
+const unesi_username = document.getElementById('unesi_username');
+const timeline_container = document.getElementById('timeline-container');
+
+
+proveri.innerText = '检查答案';
+sledece.innerText = '下一题➜';
+let bodovi = 0;
+let pitanje = 0;
+let tacan_odgovor = 0;
+const userValue = username.value;
+let moj_username = '';
+
+const pitanjaData = {
+ 1: {
+ pitanje: '水的化学式是什么?',
+ opcije: ['A) H₂O', 'B) CO₂', 'C) O₂', 'D) NaCl'],
+ tacanOdgovor: 'A) H₂O',
+ objasnjenje: '水的化学式是H₂O,表示一个水分子由2个氢原子和1个氧原子组成。CO₂是二氧化碳,O₂是氧气,NaCl是氯化钠(食盐)。'
+ },
+ 2: {
+ pitanje: '以下哪种物质是金属?',
+ opcije: ['A) 硫', 'B) 铁', 'C) 碳', 'D) 磷'],
+ tacanOdgovor: 'B) 铁',
+ objasnjenje: '铁是一种金属元素,具有良好的导电性、导热性和延展性。硫、碳、磷都是非金属元素。'
+ },
+ 3: {
+ pitanje: '以下哪个是化学变化?',
+ opcije: ['A) 冰融化成水', 'B) 酒精挥发', 'C) 铁生锈', 'D) 玻璃破碎'],
+ tacanOdgovor: 'C) 铁生锈',
+ objasnjenje: '化学变化是指产生新物质的变化。铁生锈时,铁与氧气和水反应生成了新物质——铁锈(氧化铁)。其他选项都是物理变化,没有产生新物质。'
+ },
+ 4: {
+ pitanje: '氧气的化学式是什么?',
+ opcije: ['A) O', 'B) O₂', 'C) O₃', 'D) H₂O'],
+ tacanOdgovor: 'B) O₂',
+ objasnjenje: '氧气的化学式是O₂,表示一个氧气分子由2个氧原子组成。O是氧元素符号,O₃是臭氧,H₂O是水。'
+ },
+ 5: {
+ pitanje: '以下哪种物质是酸?',
+ opcije: ['A) 氢氧化钠', 'B) 盐酸', 'C) 氯化钠', 'D) 氢氧化钙'],
+ tacanOdgovor: 'B) 盐酸',
+ objasnjenje: '盐酸(HCl)是一种强酸。氢氧化钠(NaOH)和氢氧化钙(Ca(OH)₂)是碱,氯化钠(NaCl)是盐。酸在水溶液中能解离出氢离子(H⁺)。'
+ }
+};
+
+document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+});
+
+bodovi_tekst.style.display = 'none';
+igrac.style.display = 'none';
+timeline_container.style.display = 'none';
+
+
+pocni_kviz.onclick = () => {
+ const inputUsername = username.value.trim();
+ if(!inputUsername){
+ unesi_username.style.animation = 'none';
+ void unesi_username.offsetWidth;
+ unesi_username.style.animation = 'shake 1s 1';
+ unesi_username.innerText = '请输入用户名!'
+ return;
+ }
+ moj_username = inputUsername;
+ username.remove();
+ pocni_kviz.remove();
+ slicica.remove();
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'flex';
+ });
+ timeline_container.style.display = 'flex';
+ proveri.style.display = 'block';
+ bodovi_tekst.style.display = 'flex';
+ igrac.style.display = 'flex';
+ slicica.style.margin ='10px auto';
+
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+ igrac.innerText = `玩家:${moj_username}`;
+ unesi_username.innerText = '';
+
+ postaviPitanje();
+};
+
+
+
+postaviPitanje = () => {
+ pitanje++;
+ const data = pitanjaData[pitanje];
+ if (data) {
+ naslov.innerText = `${pitanje}. ${data.pitanje}`;
+ prvo_tekst.innerText = data.opcije[0];
+ drugo_tekst.innerText = data.opcije[1];
+ trece_tekst.innerText = data.opcije[2];
+ cetvrto_tekst.innerText = data.opcije[3];
+ }
+
+ [prvo, drugo, trece, cetvrto].forEach(r => r.checked = false);
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ tacno_netacno.innerText = '';
+ sledece.style.display = 'none';
+ proveri.style.display = 'block';
+
+
+ updateTimeline(pitanje);
+
+}
+
+
+
+const timeline = document.getElementById('timeline');
+const ukupnaPitanja = 5;
+
+updateTimeline = (pitanje) => {
+ const procent = (pitanje / ukupnaPitanja) * 100;
+ timeline.style.width = procent + '%';
+}
+
+getOpcije = (pitanje) => {
+ if(pitanje === 1){
+ return [
+ {el: prvo, tacno: true},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 2){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 3){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: true},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 4){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 5){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ }
+}
+
+const snimiPogresnoPitanje = (pitanjeBroj, korisnikovOdgovor) => {
+ const data = pitanjaData[pitanjeBroj];
+ if (!data) return;
+
+ const pogresnoPitanje = {
+ id: `hemija_${pitanjeBroj}_${Date.now()}`,
+ kategorija: '化学',
+ pitanje: data.pitanje,
+ opcije: data.opcije,
+ korisnikovOdgovor: korisnikovOdgovor,
+ tacanOdgovor: data.tacanOdgovor,
+ objasnjenje: data.objasnjenje,
+ vreme: new Date().toISOString()
+ };
+
+ let pogresnaPitanja = JSON.parse(localStorage.getItem('wrongQuestions') || '[]');
+
+ const postojece = pogresnaPitanja.find(p =>
+ p.kategorija === '化学' && p.pitanje === data.pitanje
+ );
+
+ if (!postojece) {
+ pogresnaPitanja.push(pogresnoPitanje);
+ localStorage.setItem('wrongQuestions', JSON.stringify(pogresnaPitanja));
+ }
+};
+
+proveri.onclick = () => {
+ const opcije = getOpcije(pitanje);
+ const izabrana = opcije.find(opt => opt.el.checked);
+
+ if(!izabrana){
+ tacno_netacno.style.color = '#374151'
+ tacno_netacno.innerText = '请选择一个答案!';
+ return;
+ }
+
+ proveri.style.display = 'none';
+ sledece.style.display = 'block';
+
+ const korisnikovOdgovor = izabrana.el.nextElementSibling.innerText;
+ const data = pitanjaData[pitanje];
+
+ if(izabrana.tacno){
+ tacno_netacno.innerHTML = `恭喜 ${moj_username},回答正确!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#22C55E';
+ bodovi += 10;
+
+ dodatak_bodova.style.animation = 'none';
+ void dodatak_bodova.offsetWidth;
+ dodatak_bodova.style.animation = 'bodoviIzlaz 2s ease-in-out 1';
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'tacanOdgovor 1s 1';
+ tacan_odgovor ++;
+ } else {
+ tacno_netacno.innerHTML = `回答错误!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#EF4444';
+
+ snimiPogresnoPitanje(pitanje, korisnikovOdgovor);
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'netacanOdgovor 1s 1';
+ }
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+
+ if(pitanje === 5){
+ sledece.innerText = '测验结束';
+ sledece.onclick = krajKviza;
+ }
+};
+krajKviza = () => {
+ let procenat = (tacan_odgovor / pitanje) * 100;
+ procenat = (procenat.toFixed(2));
+ if(bodovi === (pitanje * 10)) {
+ naslov.innerHTML = `恭喜 ${moj_username},测验完成!
所有问题都回答正确!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else if(bodovi === 0){
+ naslov.innerHTML = `${moj_username},测验完成!
很遗憾,没有答对任何题目!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else {
+ naslov.innerHTML = `
恭喜 ${moj_username},测验完成!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }
+
+
+ [prvo_tekst, drugo_tekst, trece_tekst, cetvrto_tekst].forEach(el => el.innerText = '');
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+ });
+ proveri.style.display = 'none';
+ sledece.style.display = 'none';
+ bodovi_tekst.style.display = 'none'
+ igrac.style.display = 'none';
+ timeline_container.style.display = 'none';
+
+
+ tacno_netacno.style.color = '#111827'
+ tacno_netacno.innerHTML = '
⬅返回首页';
+ vrati.remove();
+}
+
+sledece.onclick = postaviPitanje;
+
+document.querySelectorAll(".klikabilno").forEach(el => {
+ el.addEventListener("click", () => {
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ el.classList.add('bold');
+ });
+});
\ No newline at end of file
diff --git a/oblasti/informatika/informatika.html b/oblasti/informatika/informatika.html
new file mode 100644
index 0000000..25c8005
--- /dev/null
+++ b/oblasti/informatika/informatika.html
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
知识测验
+
+
+
+
+
+
+
+
+
+
+
+ +10
+ ⬅返回首页
+
+
+
+
+
+
+
+
+
+
X
+
关于作者
+
我叫Goran Basic,19岁,是ITS - 高等信息技术职业学院的学生。
+
这个测验是出于个人好奇心和将在大学学到的知识应用于实践的愿望而创建的。
+
在项目开发过程中,我使用HTML、CSS和JavaScript研究了问题逻辑、评分和应用功能。
+
我的目标是通过独立工作进一步提高我的Web编程技能并测试我自己的想法。
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/oblasti/informatika/informatika.js b/oblasti/informatika/informatika.js
new file mode 100644
index 0000000..d9bd0b9
--- /dev/null
+++ b/oblasti/informatika/informatika.js
@@ -0,0 +1,286 @@
+
+const wrapper = document.getElementById('wrapper')
+const pocni_kviz = document.getElementById("pocni_kviz");
+const username = document.getElementById('username');
+const naslov = document.getElementById('naslov');
+const bodovi_tekst = document.getElementById('bodovi');
+const prvo = document.getElementById('prvo');
+const drugo = document.getElementById('drugo');
+const trece = document.getElementById('trece');
+const cetvrto = document.getElementById('cetvrto');
+const prvo_tekst = document.getElementById('prvo_tekst');
+const drugo_tekst = document.getElementById('drugo_tekst');
+const trece_tekst = document.getElementById('trece_tekst');
+const cetvrto_tekst = document.getElementById('cetvrto_tekst');
+const proveri = document.getElementById('proveri');
+const sledece = document.getElementById('sledece');
+const tacno_netacno = document.getElementById('tacno_netacno');
+const vrati = document.getElementById('vrati');
+const slicica = document.getElementById('slicica');
+const dodatak_bodova = document.getElementById('dodatak_bodova');
+const igrac = document.getElementById('igrac');
+const unesi_username = document.getElementById('unesi_username');
+const timeline_container = document.getElementById('timeline-container');
+
+
+proveri.innerText = '检查答案';
+sledece.innerText = '下一题➜';
+let bodovi = 0;
+let pitanje = 0;
+let tacan_odgovor = 0;
+const userValue = username.value;
+let moj_username = '';
+
+const pitanjaData = {
+ 1: {
+ pitanje: 'HTML的全称是什么?',
+ opcije: ['A) Hyper Text Markup Language', 'B) High Tech Modern Language', 'C) Home Tool Markup Language', 'D) Hyperlinks and Text Markup Language'],
+ tacanOdgovor: 'A) Hyper Text Markup Language',
+ objasnjenje: 'HTML是Hyper Text Markup Language(超文本标记语言)的缩写。它是构建网页的标准标记语言,使用标签来描述网页的结构和内容。'
+ },
+ 2: {
+ pitanje: '以下哪个不是编程语言?',
+ opcije: ['A) Python', 'B) JavaScript', 'C) Photoshop', 'D) Java'],
+ tacanOdgovor: 'C) Photoshop',
+ objasnjenje: 'Photoshop是Adobe公司开发的图像处理软件,不是编程语言。Python、JavaScript、Java都是常用的编程语言。'
+ },
+ 3: {
+ pitanje: '1GB等于多少MB?',
+ opcije: ['A) 100MB', 'B) 512MB', 'C) 1000MB', 'D) 1024MB'],
+ tacanOdgovor: 'D) 1024MB',
+ objasnjenje: '计算机存储容量采用二进制系统,1GB(千兆字节)等于1024MB(兆字节)。这是因为2的10次方等于1024。同样,1MB=1024KB,1KB=1024字节。'
+ },
+ 4: {
+ pitanje: '以下哪个是关系型数据库?',
+ opcije: ['A) MongoDB', 'B) Redis', 'C) MySQL', 'D) Cassandra'],
+ tacanOdgovor: 'C) MySQL',
+ objasnjenje: 'MySQL是关系型数据库管理系统(RDBMS),使用表格来存储数据,支持SQL查询语言。MongoDB、Redis、Cassandra都是非关系型数据库(NoSQL)。'
+ },
+ 5: {
+ pitanje: 'API的全称是什么?',
+ opcije: ['A) Application Programming Interface', 'B) Advanced Programming Interface', 'C) Automated Process Integration', 'D) Application Process Integration'],
+ tacanOdgovor: 'A) Application Programming Interface',
+ objasnjenje: 'API是Application Programming Interface(应用程序编程接口)的缩写。它是一组定义好的规则和协议,允许不同的软件应用程序之间进行通信和数据交换。'
+ }
+};
+
+document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+});
+
+bodovi_tekst.style.display = 'none';
+igrac.style.display = 'none';
+timeline_container.style.display = 'none';
+
+
+pocni_kviz.onclick = () => {
+ const inputUsername = username.value.trim();
+ if(!inputUsername){
+ unesi_username.style.animation = 'none';
+ void unesi_username.offsetWidth;
+ unesi_username.style.animation = 'shake 1s 1';
+ unesi_username.innerText = '请输入用户名!'
+ return;
+ }
+ moj_username = inputUsername;
+ username.remove();
+ pocni_kviz.remove();
+ slicica.remove();
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'flex';
+ });
+ timeline_container.style.display = 'flex';
+ proveri.style.display = 'block';
+ bodovi_tekst.style.display = 'flex';
+ igrac.style.display = 'flex';
+ slicica.style.margin ='10px auto';
+
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+ igrac.innerText = `玩家:${moj_username}`;
+ unesi_username.innerText = '';
+
+ postaviPitanje();
+};
+
+
+
+postaviPitanje = () => {
+ pitanje++;
+ const data = pitanjaData[pitanje];
+ if (data) {
+ naslov.innerText = `${pitanje}. ${data.pitanje}`;
+ prvo_tekst.innerText = data.opcije[0];
+ drugo_tekst.innerText = data.opcije[1];
+ trece_tekst.innerText = data.opcije[2];
+ cetvrto_tekst.innerText = data.opcije[3];
+ }
+
+ [prvo, drugo, trece, cetvrto].forEach(r => r.checked = false);
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ tacno_netacno.innerText = '';
+ sledece.style.display = 'none';
+ proveri.style.display = 'block';
+
+
+ updateTimeline(pitanje);
+
+}
+
+
+
+const timeline = document.getElementById('timeline');
+const ukupnaPitanja = 5;
+
+updateTimeline = (pitanje) => {
+ const procent = (pitanje / ukupnaPitanja) * 100;
+ timeline.style.width = procent + '%';
+}
+
+getOpcije = (pitanje) => {
+ if(pitanje === 1){
+ return [
+ {el: prvo, tacno: true},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 2){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: true},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 3){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: true}
+ ];
+ } else if(pitanje === 4){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: true},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 5){
+ return [
+ {el: prvo, tacno: true},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ }
+}
+
+const snimiPogresnoPitanje = (pitanjeBroj, korisnikovOdgovor) => {
+ const data = pitanjaData[pitanjeBroj];
+ if (!data) return;
+
+ const pogresnoPitanje = {
+ id: `informatika_${pitanjeBroj}_${Date.now()}`,
+ kategorija: '计算机',
+ pitanje: data.pitanje,
+ opcije: data.opcije,
+ korisnikovOdgovor: korisnikovOdgovor,
+ tacanOdgovor: data.tacanOdgovor,
+ objasnjenje: data.objasnjenje,
+ vreme: new Date().toISOString()
+ };
+
+ let pogresnaPitanja = JSON.parse(localStorage.getItem('wrongQuestions') || '[]');
+
+ const postojece = pogresnaPitanja.find(p =>
+ p.kategorija === '计算机' && p.pitanje === data.pitanje
+ );
+
+ if (!postojece) {
+ pogresnaPitanja.push(pogresnoPitanje);
+ localStorage.setItem('wrongQuestions', JSON.stringify(pogresnaPitanja));
+ }
+};
+
+proveri.onclick = () => {
+ const opcije = getOpcije(pitanje);
+ const izabrana = opcije.find(opt => opt.el.checked);
+
+ if(!izabrana){
+ tacno_netacno.style.color = '#374151'
+ tacno_netacno.innerText = '请选择一个答案!';
+ return;
+ }
+
+ proveri.style.display = 'none';
+ sledece.style.display = 'block';
+
+ const korisnikovOdgovor = izabrana.el.nextElementSibling.innerText;
+ const data = pitanjaData[pitanje];
+
+ if(izabrana.tacno){
+ tacno_netacno.innerHTML = `恭喜 ${moj_username},回答正确!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#22C55E';
+ bodovi += 10;
+
+ dodatak_bodova.style.animation = 'none';
+ void dodatak_bodova.offsetWidth;
+ dodatak_bodova.style.animation = 'bodoviIzlaz 2s ease-in-out 1';
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'tacanOdgovor 1s 1';
+ tacan_odgovor ++;
+ } else {
+ tacno_netacno.innerHTML = `回答错误!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#EF4444';
+
+ snimiPogresnoPitanje(pitanje, korisnikovOdgovor);
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'netacanOdgovor 1s 1';
+ }
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+
+ if(pitanje === 5){
+ sledece.innerText = '测验结束';
+ sledece.onclick = krajKviza;
+ }
+};
+krajKviza = () => {
+ let procenat = (tacan_odgovor / pitanje) * 100;
+ procenat = (procenat.toFixed(2));
+ if(bodovi === (pitanje * 10)) {
+ naslov.innerHTML = `恭喜 ${moj_username},测验完成!
所有问题都回答正确!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else if(bodovi === 0){
+ naslov.innerHTML = `${moj_username},测验完成!
很遗憾,没有答对任何题目!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else {
+ naslov.innerHTML = `
恭喜 ${moj_username},测验完成!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }
+
+
+ [prvo_tekst, drugo_tekst, trece_tekst, cetvrto_tekst].forEach(el => el.innerText = '');
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+ });
+ proveri.style.display = 'none';
+ sledece.style.display = 'none';
+ bodovi_tekst.style.display = 'none'
+ igrac.style.display = 'none';
+ timeline_container.style.display = 'none';
+
+
+ tacno_netacno.style.color = '#111827'
+ tacno_netacno.innerHTML = '
⬅返回首页';
+ vrati.remove();
+}
+
+sledece.onclick = postaviPitanje;
+
+document.querySelectorAll(".klikabilno").forEach(el => {
+ el.addEventListener("click", () => {
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ el.classList.add('bold');
+ });
+});
\ No newline at end of file
diff --git a/oblasti/istorija/istorija.js b/oblasti/istorija/istorija.js
index 3d492d2..954caff 100644
--- a/oblasti/istorija/istorija.js
+++ b/oblasti/istorija/istorija.js
@@ -24,8 +24,8 @@ const timeline_container = document.getElementById('timeline-container');
-proveri.innerText = 'Proveri';
-sledece.innerText = 'Sledece➜';
+proveri.innerText = '检查答案';
+sledece.innerText = '下一题➜';
let bodovi = 0;
let pitanje = 0;
let tacan_odgovor = 0;
@@ -46,7 +46,7 @@ pocni_kviz.onclick = () => {
unesi_username.style.animation = 'none';
void unesi_username.offsetWidth;
unesi_username.style.animation = 'shake 1s 1';
- unesi_username.innerText = 'Morate uneti username!'
+ unesi_username.innerText = '请输入用户名!'
return;
}
moj_username = inputUsername;
@@ -62,8 +62,8 @@ pocni_kviz.onclick = () => {
igrac.style.display = 'flex';
slicica.style.margin ='10px auto';
- bodovi_tekst.innerText = `Bodovi: ${bodovi}`;
- igrac.innerText = `Igrac : ${moj_username}`;
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+ igrac.innerText = `玩家:${moj_username}`;
unesi_username.innerText = '';
postaviPitanje();
@@ -73,36 +73,36 @@ pocni_kviz.onclick = () => {
postaviPitanje = () => {
pitanje++;
if(pitanje === 1){
- naslov.innerText = `${pitanje}. Pitanje - Koji događaj se smatra početkom Prvog svetskog rata?`;
- prvo_tekst.innerText ='A) Potpisivanje Versajskog ugovora';
- drugo_tekst.innerText = 'B) Atentat na Franca Ferdinanda';
- trece_tekst.innerText = 'C) Početak Ruske revolucije';
- cetvrto_tekst.innerText = 'D) Bitka kod Verduna';
+ naslov.innerText = `${pitanje}. 哪个事件被认为是第一次世界大战的开始?`;
+ prvo_tekst.innerText ='A) 签署凡尔赛条约';
+ drugo_tekst.innerText = 'B) 弗朗茨·斐迪南遇刺';
+ trece_tekst.innerText = 'C) 俄国革命开始';
+ cetvrto_tekst.innerText = 'D) 凡尔登战役';
} else if(pitanje === 2){
- naslov.innerText = `${pitanje}. Koji car je vladao Rimskim Carstvom u vreme Hristovog rođenja?`;
- prvo_tekst.innerText = 'A) Julije Cezar';
- drugo_tekst.innerText = 'B) Neron';
- trece_tekst.innerText = 'C) Avgust';
- cetvrto_tekst.innerText = 'D) Trajan';
+ naslov.innerText = `${pitanje}. 哪位皇帝在基督诞生时统治罗马帝国?`;
+ prvo_tekst.innerText = 'A) 尤利乌斯·凯撒';
+ drugo_tekst.innerText = 'B) 尼禄';
+ trece_tekst.innerText = 'C) 奥古斯都';
+ cetvrto_tekst.innerText = 'D) 图拉真';
} else if(pitanje === 3){
- naslov.innerText = `${pitanje}. Koja država je prvi put koristila parnu lokomotivu za prevoz putnika?`;
- prvo_tekst.innerText = 'A) Nemačka';
- drugo_tekst.innerText = 'B) Velika Britanija';
- trece_tekst.innerText = 'C) Francuska';
- cetvrto_tekst.innerText = 'D) SAD';
+ naslov.innerText = `${pitanje}. 哪个国家首次使用蒸汽机车运送乘客?`;
+ prvo_tekst.innerText = 'A) 德国';
+ drugo_tekst.innerText = 'B) 英国';
+ trece_tekst.innerText = 'C) 法国';
+ cetvrto_tekst.innerText = 'D) 美国';
} else if(pitanje === 4){
- naslov.innerText = `${pitanje}. Koja bitka se smatra odlučujućom u Napoleonovim ratovima 1815. godine?`;
- prvo_tekst.innerText = 'A) Bitka kod Trafalgara';
- drugo_tekst.innerText = 'B) Bitka kod Vaterloa';
- trece_tekst.innerText = 'C) Bitka kod Leipziga';
- cetvrto_tekst.innerText = 'D) Bitka kod Austerlica';
+ naslov.innerText = `${pitanje}. 哪场战役被认为是1815年拿破仑战争的决定性战役?`;
+ prvo_tekst.innerText = 'A) 特拉法加战役';
+ drugo_tekst.innerText = 'B) 滑铁卢战役';
+ trece_tekst.innerText = 'C) 莱比锡战役';
+ cetvrto_tekst.innerText = 'D) 奥斯特里茨战役';
} else if(pitanje === 5){
- naslov.innerText = `${pitanje}. Koja bitka se smatra odlučujućom u Napoleonovim ratovima 1815. godine?`;
- prvo_tekst.innerText = 'A) Velika Britanija';
- drugo_tekst.innerText = 'B) Francuska';
- trece_tekst.innerText = 'C) SAD';
- cetvrto_tekst.innerText = 'D) Švedska';
+ naslov.innerText = `${pitanje}. 冷战时期,哪两个国家是主要的超级大国?`;
+ prvo_tekst.innerText = 'A) 英国和法国';
+ drugo_tekst.innerText = 'B) 中国和日本';
+ trece_tekst.innerText = 'C) 美国和苏联';
+ cetvrto_tekst.innerText = 'D) 德国和意大利';
}
[prvo, drugo, trece, cetvrto].forEach(r => r.checked = false);
document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
@@ -139,8 +139,8 @@ getOpcije = (pitanje) => {
];
} else if(pitanje === 3){
return [
- {el: prvo, tacno: true},
- {el: drugo, tacno: false},
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
{el: trece, tacno: false},
{el: cetvrto, tacno: false}
];
@@ -161,21 +161,77 @@ getOpcije = (pitanje) => {
}
}
+const snimiPogresnoPitanje = (pitanjeBroj, korisnikovOdgovor) => {
+ const pitanjaData = {
+ 1: {
+ pitanje: '哪个事件被认为是第一次世界大战的开始?',
+ opcije: ['A) 签署凡尔赛条约', 'B) 弗朗茨·斐迪南遇刺', 'C) 俄国革命开始', 'D) 凡尔登战役'],
+ tacanOdgovor: 'B) 弗朗茨·斐迪南遇刺'
+ },
+ 2: {
+ pitanje: '哪位皇帝在基督诞生时统治罗马帝国?',
+ opcije: ['A) 尤利乌斯·凯撒', 'B) 尼禄', 'C) 奥古斯都', 'D) 图拉真'],
+ tacanOdgovor: 'C) 奥古斯都'
+ },
+ 3: {
+ pitanje: '哪个国家首次使用蒸汽机车运送乘客?',
+ opcije: ['A) 德国', 'B) 英国', 'C) 法国', 'D) 美国'],
+ tacanOdgovor: 'B) 英国'
+ },
+ 4: {
+ pitanje: '哪场战役被认为是1815年拿破仑战争的决定性战役?',
+ opcije: ['A) 特拉法加战役', 'B) 滑铁卢战役', 'C) 莱比锡战役', 'D) 奥斯特里茨战役'],
+ tacanOdgovor: 'B) 滑铁卢战役'
+ },
+ 5: {
+ pitanje: '冷战时期,哪两个国家是主要的超级大国?',
+ opcije: ['A) 英国和法国', 'B) 中国和日本', 'C) 美国和苏联', 'D) 德国和意大利'],
+ tacanOdgovor: 'C) 美国和苏联'
+ }
+ };
+
+ const data = pitanjaData[pitanjeBroj];
+ if (!data) return;
+
+ const pogresnoPitanje = {
+ id: `istorija_${pitanjeBroj}_${Date.now()}`,
+ kategorija: '历史',
+ pitanje: data.pitanje,
+ opcije: data.opcije,
+ korisnikovOdgovor: korisnikovOdgovor,
+ tacanOdgovor: data.tacanOdgovor,
+ vreme: new Date().toISOString()
+ };
+
+ let pogresnaPitanja = JSON.parse(localStorage.getItem('wrongQuestions') || '[]');
+
+ const postojece = pogresnaPitanja.find(p =>
+ p.kategorija === '历史' && p.pitanje === data.pitanje
+ );
+
+ if (!postojece) {
+ pogresnaPitanja.push(pogresnoPitanje);
+ localStorage.setItem('wrongQuestions', JSON.stringify(pogresnaPitanja));
+ }
+};
+
proveri.onclick = () => {
const opcije = getOpcije(pitanje);
const izabrana = opcije.find(opt => opt.el.checked);
if(!izabrana){
tacno_netacno.style.color = '#374151'
- tacno_netacno.innerText = 'Morate nešto da izaberete!';
+ tacno_netacno.innerText = '请选择一个答案!';
return;
}
proveri.style.display = 'none';
sledece.style.display = 'block';
+ const korisnikovOdgovor = izabrana.el.nextElementSibling.innerText;
+
if(izabrana.tacno){
- tacno_netacno.innerText = `Bravo ${moj_username} tacan odgovor!`;
+ tacno_netacno.innerText = `恭喜 ${moj_username},回答正确!`;
tacno_netacno.style.color = '#22C55E';
bodovi += 10;
@@ -188,17 +244,19 @@ proveri.onclick = () => {
wrapper.style.animation = 'tacanOdgovor 1s 1';
tacan_odgovor ++;
} else {
- tacno_netacno.innerText = 'Netacan odgovor!';
+ tacno_netacno.innerText = '回答错误!';
tacno_netacno.style.color = '#EF4444';
+ snimiPogresnoPitanje(pitanje, korisnikovOdgovor);
+
wrapper.style.animation = 'none';
void wrapper.offsetWidth;
wrapper.style.animation = 'netacanOdgovor 1s 1';
}
- bodovi_tekst.innerText = `Bodovi: ${bodovi}`;
+ bodovi_tekst.innerText = `分数:${bodovi}`;
if(pitanje === 5){
- sledece.innerText = 'Kraj kviza';
+ sledece.innerText = '测验结束';
sledece.onclick = krajKviza;
}
};
@@ -206,11 +264,11 @@ krajKviza = () => {
let procenat = (tacan_odgovor / pitanje) * 100;
procenat = (procenat.toFixed(2));
if(bodovi === (pitanje * 10)) {
- naslov.innerHTML = `Cestitam ${moj_username} kviz je završen!
Na sva pitanja ste dali tacan odgovor!
Broj bodova: ${bodovi}/${pitanje*10}
${procenat}%
`;
+ naslov.innerHTML = `恭喜 ${moj_username},测验完成!
所有问题都回答正确!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
}else if(bodovi === 0){
- naslov.innerHTML = `${moj_username} kviz je završen!
Ni na jedno pitanje niste dali tacan odgovor!
Broj bodova: ${bodovi}/${pitanje*10}
${procenat}%
`;
+ naslov.innerHTML = `${moj_username},测验完成!
很遗憾,没有答对任何题目!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
}else {
- naslov.innerHTML = `
Cestitam ${moj_username} kviz je završen!
Broj bodova: ${bodovi}/${pitanje*10}
${procenat}%
`;
+ naslov.innerHTML = `
恭喜 ${moj_username},测验完成!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
}
@@ -225,7 +283,7 @@ krajKviza = () => {
timeline_container.style.display = 'none';
tacno_netacno.style.color = '#111827'
- tacno_netacno.innerHTML = '
⬅Vrati se na pocetnu';
+ tacno_netacno.innerHTML = '
⬅返回首页';
vrati.remove();
}
diff --git a/oblasti/knjizevnost/knjizevnost.html b/oblasti/knjizevnost/knjizevnost.html
new file mode 100644
index 0000000..318a39b
--- /dev/null
+++ b/oblasti/knjizevnost/knjizevnost.html
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
知识测验
+
+
+
+
+
+
+
+
+
+
+
+ +10
+ ⬅返回首页
+
+
+
+
+
+
+
+
+
+
X
+
关于作者
+
我叫Goran Basic,19岁,是ITS - 高等信息技术职业学院的学生。
+
这个测验是出于个人好奇心和将在大学学到的知识应用于实践的愿望而创建的。
+
在项目开发过程中,我使用HTML、CSS和JavaScript研究了问题逻辑、评分和应用功能。
+
我的目标是通过独立工作进一步提高我的Web编程技能并测试我自己的想法。
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/oblasti/knjizevnost/knjizevnost.js b/oblasti/knjizevnost/knjizevnost.js
new file mode 100644
index 0000000..1ecfed1
--- /dev/null
+++ b/oblasti/knjizevnost/knjizevnost.js
@@ -0,0 +1,286 @@
+
+const wrapper = document.getElementById('wrapper')
+const pocni_kviz = document.getElementById("pocni_kviz");
+const username = document.getElementById('username');
+const naslov = document.getElementById('naslov');
+const bodovi_tekst = document.getElementById('bodovi');
+const prvo = document.getElementById('prvo');
+const drugo = document.getElementById('drugo');
+const trece = document.getElementById('trece');
+const cetvrto = document.getElementById('cetvrto');
+const prvo_tekst = document.getElementById('prvo_tekst');
+const drugo_tekst = document.getElementById('drugo_tekst');
+const trece_tekst = document.getElementById('trece_tekst');
+const cetvrto_tekst = document.getElementById('cetvrto_tekst');
+const proveri = document.getElementById('proveri');
+const sledece = document.getElementById('sledece');
+const tacno_netacno = document.getElementById('tacno_netacno');
+const vrati = document.getElementById('vrati');
+const slicica = document.getElementById('slicica');
+const dodatak_bodova = document.getElementById('dodatak_bodova');
+const igrac = document.getElementById('igrac');
+const unesi_username = document.getElementById('unesi_username');
+const timeline_container = document.getElementById('timeline-container');
+
+
+proveri.innerText = '检查答案';
+sledece.innerText = '下一题➜';
+let bodovi = 0;
+let pitanje = 0;
+let tacan_odgovor = 0;
+const userValue = username.value;
+let moj_username = '';
+
+const pitanjaData = {
+ 1: {
+ pitanje: '《红楼梦》的作者是谁?',
+ opcije: ['A) 罗贯中', 'B) 施耐庵', 'C) 曹雪芹', 'D) 吴承恩'],
+ tacanOdgovor: 'C) 曹雪芹',
+ objasnjenje: '《红楼梦》是中国古典四大名著之一,作者是清代作家曹雪芹。罗贯中著《三国演义》,施耐庵著《水浒传》,吴承恩著《西游记》。'
+ },
+ 2: {
+ pitanje: '"床前明月光,疑是地上霜"是谁的诗句?',
+ opcije: ['A) 杜甫', 'B) 李白', 'C) 白居易', 'D) 王维'],
+ tacanOdgovor: 'B) 李白',
+ objasnjenje: '这是唐代诗人李白的《静夜思》。李白被称为"诗仙",是中国历史上最伟大的浪漫主义诗人之一。'
+ },
+ 3: {
+ pitanje: '以下哪部是鲁迅的作品?',
+ opcije: ['A) 《骆驼祥子》', 'B) 《阿Q正传》', 'C) 《家》', 'D) 《雷雨》'],
+ tacanOdgovor: 'B) 《阿Q正传》',
+ objasnjenje: '《阿Q正传》是鲁迅的代表作之一。《骆驼祥子》是老舍的作品,《家》是巴金的作品,《雷雨》是曹禺的作品。'
+ },
+ 4: {
+ pitanje: '"窈窕淑女,君子好逑"出自哪部经典?',
+ opcije: ['A) 《论语》', 'B) 《孟子》', 'C) 《诗经》', 'D) 《楚辞》'],
+ tacanOdgovor: 'C) 《诗经》',
+ objasnjenje: '这句诗出自《诗经·周南·关雎》,是《诗经》的开篇之作。《诗经》是中国最早的诗歌总集,收录了西周初年到春秋中叶的诗歌305篇。'
+ },
+ 5: {
+ pitanje: '以下哪位是唐宋八大家之一?',
+ opcije: ['A) 李白', 'B) 杜甫', 'C) 苏轼', 'D) 陆游'],
+ tacanOdgovor: 'C) 苏轼',
+ objasnjenje: '唐宋八大家是唐代韩愈、柳宗元和宋代苏轼、苏洵、苏辙、王安石、曾巩、欧阳修八位散文家的合称。李白、杜甫是唐代著名诗人,陆游是南宋著名诗人,但都不属于唐宋八大家。'
+ }
+};
+
+document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+});
+
+bodovi_tekst.style.display = 'none';
+igrac.style.display = 'none';
+timeline_container.style.display = 'none';
+
+
+pocni_kviz.onclick = () => {
+ const inputUsername = username.value.trim();
+ if(!inputUsername){
+ unesi_username.style.animation = 'none';
+ void unesi_username.offsetWidth;
+ unesi_username.style.animation = 'shake 1s 1';
+ unesi_username.innerText = '请输入用户名!'
+ return;
+ }
+ moj_username = inputUsername;
+ username.remove();
+ pocni_kviz.remove();
+ slicica.remove();
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'flex';
+ });
+ timeline_container.style.display = 'flex';
+ proveri.style.display = 'block';
+ bodovi_tekst.style.display = 'flex';
+ igrac.style.display = 'flex';
+ slicica.style.margin ='10px auto';
+
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+ igrac.innerText = `玩家:${moj_username}`;
+ unesi_username.innerText = '';
+
+ postaviPitanje();
+};
+
+
+
+postaviPitanje = () => {
+ pitanje++;
+ const data = pitanjaData[pitanje];
+ if (data) {
+ naslov.innerText = `${pitanje}. ${data.pitanje}`;
+ prvo_tekst.innerText = data.opcije[0];
+ drugo_tekst.innerText = data.opcije[1];
+ trece_tekst.innerText = data.opcije[2];
+ cetvrto_tekst.innerText = data.opcije[3];
+ }
+
+ [prvo, drugo, trece, cetvrto].forEach(r => r.checked = false);
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ tacno_netacno.innerText = '';
+ sledece.style.display = 'none';
+ proveri.style.display = 'block';
+
+
+ updateTimeline(pitanje);
+
+}
+
+
+
+const timeline = document.getElementById('timeline');
+const ukupnaPitanja = 5;
+
+updateTimeline = (pitanje) => {
+ const procent = (pitanje / ukupnaPitanja) * 100;
+ timeline.style.width = procent + '%';
+}
+
+getOpcije = (pitanje) => {
+ if(pitanje === 1){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: true},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 2){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 3){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 4){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: true},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 5){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: true},
+ {el: cetvrto, tacno: false}
+ ];
+ }
+}
+
+const snimiPogresnoPitanje = (pitanjeBroj, korisnikovOdgovor) => {
+ const data = pitanjaData[pitanjeBroj];
+ if (!data) return;
+
+ const pogresnoPitanje = {
+ id: `knjizevnost_${pitanjeBroj}_${Date.now()}`,
+ kategorija: '文学',
+ pitanje: data.pitanje,
+ opcije: data.opcije,
+ korisnikovOdgovor: korisnikovOdgovor,
+ tacanOdgovor: data.tacanOdgovor,
+ objasnjenje: data.objasnjenje,
+ vreme: new Date().toISOString()
+ };
+
+ let pogresnaPitanja = JSON.parse(localStorage.getItem('wrongQuestions') || '[]');
+
+ const postojece = pogresnaPitanja.find(p =>
+ p.kategorija === '文学' && p.pitanje === data.pitanje
+ );
+
+ if (!postojece) {
+ pogresnaPitanja.push(pogresnoPitanje);
+ localStorage.setItem('wrongQuestions', JSON.stringify(pogresnaPitanja));
+ }
+};
+
+proveri.onclick = () => {
+ const opcije = getOpcije(pitanje);
+ const izabrana = opcije.find(opt => opt.el.checked);
+
+ if(!izabrana){
+ tacno_netacno.style.color = '#374151'
+ tacno_netacno.innerText = '请选择一个答案!';
+ return;
+ }
+
+ proveri.style.display = 'none';
+ sledece.style.display = 'block';
+
+ const korisnikovOdgovor = izabrana.el.nextElementSibling.innerText;
+ const data = pitanjaData[pitanje];
+
+ if(izabrana.tacno){
+ tacno_netacno.innerHTML = `恭喜 ${moj_username},回答正确!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#22C55E';
+ bodovi += 10;
+
+ dodatak_bodova.style.animation = 'none';
+ void dodatak_bodova.offsetWidth;
+ dodatak_bodova.style.animation = 'bodoviIzlaz 2s ease-in-out 1';
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'tacanOdgovor 1s 1';
+ tacan_odgovor ++;
+ } else {
+ tacno_netacno.innerHTML = `回答错误!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#EF4444';
+
+ snimiPogresnoPitanje(pitanje, korisnikovOdgovor);
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'netacanOdgovor 1s 1';
+ }
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+
+ if(pitanje === 5){
+ sledece.innerText = '测验结束';
+ sledece.onclick = krajKviza;
+ }
+};
+krajKviza = () => {
+ let procenat = (tacan_odgovor / pitanje) * 100;
+ procenat = (procenat.toFixed(2));
+ if(bodovi === (pitanje * 10)) {
+ naslov.innerHTML = `恭喜 ${moj_username},测验完成!
所有问题都回答正确!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else if(bodovi === 0){
+ naslov.innerHTML = `${moj_username},测验完成!
很遗憾,没有答对任何题目!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else {
+ naslov.innerHTML = `
恭喜 ${moj_username},测验完成!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }
+
+
+ [prvo_tekst, drugo_tekst, trece_tekst, cetvrto_tekst].forEach(el => el.innerText = '');
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+ });
+ proveri.style.display = 'none';
+ sledece.style.display = 'none';
+ bodovi_tekst.style.display = 'none'
+ igrac.style.display = 'none';
+ timeline_container.style.display = 'none';
+
+
+ tacno_netacno.style.color = '#111827'
+ tacno_netacno.innerHTML = '
⬅返回首页';
+ vrati.remove();
+}
+
+sledece.onclick = postaviPitanje;
+
+document.querySelectorAll(".klikabilno").forEach(el => {
+ el.addEventListener("click", () => {
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ el.classList.add('bold');
+ });
+});
\ No newline at end of file
diff --git a/oblasti/sociologija/sociologija.html b/oblasti/sociologija/sociologija.html
new file mode 100644
index 0000000..814bc0c
--- /dev/null
+++ b/oblasti/sociologija/sociologija.html
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+
+
+
+
+
知识测验
+
+
+
+
+
+
+
+
+
+
+
+ +10
+ ⬅返回首页
+
+
+
+
+
+
+
+
+
+
X
+
关于作者
+
我叫Goran Basic,19岁,是ITS - 高等信息技术职业学院的学生。
+
这个测验是出于个人好奇心和将在大学学到的知识应用于实践的愿望而创建的。
+
在项目开发过程中,我使用HTML、CSS和JavaScript研究了问题逻辑、评分和应用功能。
+
我的目标是通过独立工作进一步提高我的Web编程技能并测试我自己的想法。
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/oblasti/sociologija/sociologija.js b/oblasti/sociologija/sociologija.js
new file mode 100644
index 0000000..05851de
--- /dev/null
+++ b/oblasti/sociologija/sociologija.js
@@ -0,0 +1,286 @@
+
+const wrapper = document.getElementById('wrapper')
+const pocni_kviz = document.getElementById("pocni_kviz");
+const username = document.getElementById('username');
+const naslov = document.getElementById('naslov');
+const bodovi_tekst = document.getElementById('bodovi');
+const prvo = document.getElementById('prvo');
+const drugo = document.getElementById('drugo');
+const trece = document.getElementById('trece');
+const cetvrto = document.getElementById('cetvrto');
+const prvo_tekst = document.getElementById('prvo_tekst');
+const drugo_tekst = document.getElementById('drugo_tekst');
+const trece_tekst = document.getElementById('trece_tekst');
+const cetvrto_tekst = document.getElementById('cetvrto_tekst');
+const proveri = document.getElementById('proveri');
+const sledece = document.getElementById('sledece');
+const tacno_netacno = document.getElementById('tacno_netacno');
+const vrati = document.getElementById('vrati');
+const slicica = document.getElementById('slicica');
+const dodatak_bodova = document.getElementById('dodatak_bodova');
+const igrac = document.getElementById('igrac');
+const unesi_username = document.getElementById('unesi_username');
+const timeline_container = document.getElementById('timeline-container');
+
+
+proveri.innerText = '检查答案';
+sledece.innerText = '下一题➜';
+let bodovi = 0;
+let pitanje = 0;
+let tacan_odgovor = 0;
+const userValue = username.value;
+let moj_username = '';
+
+const pitanjaData = {
+ 1: {
+ pitanje: '社会学的创始人是谁?',
+ opcije: ['A) 卡尔·马克思', 'B) 奥古斯特·孔德', 'C) 埃米尔·涂尔干', 'D) 马克斯·韦伯'],
+ tacanOdgovor: 'B) 奥古斯特·孔德',
+ objasnjenje: '奥古斯特·孔德(Auguste Comte)被认为是社会学的创始人,他在19世纪30年代首次使用"社会学"一词,提出了实证主义的研究方法。马克思、涂尔干、韦伯都是社会学的重要奠基者,但不是创始人。'
+ },
+ 2: {
+ pitanje: '以下哪个是初级群体的典型例子?',
+ opcije: ['A) 公司同事', 'B) 学校班级', 'C) 家庭', 'D) 社交网络'],
+ tacanOdgovor: 'C) 家庭',
+ objasnjenje: '初级群体是由面对面的互动形成的、具有亲密人际关系的社会群体。家庭是最典型的初级群体,成员之间有深厚的情感联系和长期的互动。同事、班级属于次级群体。'
+ },
+ 3: {
+ pitanje: '"镜中我"理论是谁提出的?',
+ opcije: ['A) 乔治·米德', 'B) 查尔斯·库利', 'C) 欧文·戈夫曼', 'D) 塔尔科特·帕森斯'],
+ tacanOdgovor: 'B) 查尔斯·库利',
+ objasnjenje: '"镜中我"(Looking-glass self)理论是美国社会学家查尔斯·库利提出的。该理论认为,人的自我认知是通过与他人的互动形成的,我们想象他人如何看待我们,然后根据这种想象形成自我概念。'
+ },
+ 4: {
+ pitanje: '以下哪个属于越轨行为?',
+ opcije: ['A) 按时上班', 'B) 遵守交通规则', 'C) 在图书馆安静看书', 'D) 在公共场所大声喧哗'],
+ tacanOdgovor: 'D) 在公共场所大声喧哗',
+ objasnjenje: '越轨行为是指违反社会规范的行为。在公共场所大声喧哗违反了公共秩序规范,属于越轨行为。其他选项都是符合社会规范的正常行为。越轨行为不一定是犯罪,也可以是违反道德规范的行为。'
+ },
+ 5: {
+ pitanje: '社会分层的主要维度不包括以下哪项?',
+ opcije: ['A) 经济收入', 'B) 教育程度', 'C) 职业声望', 'D) 个人身高'],
+ tacanOdgovor: 'D) 个人身高',
+ objasnjenje: '社会分层是指社会成员被分成高低不同的等级层次。主要维度包括:经济收入(经济资本)、教育程度(文化资本)、职业声望(社会资本)等。个人身高与社会分层无关,不影响社会地位的划分。'
+ }
+};
+
+document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+});
+
+bodovi_tekst.style.display = 'none';
+igrac.style.display = 'none';
+timeline_container.style.display = 'none';
+
+
+pocni_kviz.onclick = () => {
+ const inputUsername = username.value.trim();
+ if(!inputUsername){
+ unesi_username.style.animation = 'none';
+ void unesi_username.offsetWidth;
+ unesi_username.style.animation = 'shake 1s 1';
+ unesi_username.innerText = '请输入用户名!'
+ return;
+ }
+ moj_username = inputUsername;
+ username.remove();
+ pocni_kviz.remove();
+ slicica.remove();
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'flex';
+ });
+ timeline_container.style.display = 'flex';
+ proveri.style.display = 'block';
+ bodovi_tekst.style.display = 'flex';
+ igrac.style.display = 'flex';
+ slicica.style.margin ='10px auto';
+
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+ igrac.innerText = `玩家:${moj_username}`;
+ unesi_username.innerText = '';
+
+ postaviPitanje();
+};
+
+
+
+postaviPitanje = () => {
+ pitanje++;
+ const data = pitanjaData[pitanje];
+ if (data) {
+ naslov.innerText = `${pitanje}. ${data.pitanje}`;
+ prvo_tekst.innerText = data.opcije[0];
+ drugo_tekst.innerText = data.opcije[1];
+ trece_tekst.innerText = data.opcije[2];
+ cetvrto_tekst.innerText = data.opcije[3];
+ }
+
+ [prvo, drugo, trece, cetvrto].forEach(r => r.checked = false);
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ tacno_netacno.innerText = '';
+ sledece.style.display = 'none';
+ proveri.style.display = 'block';
+
+
+ updateTimeline(pitanje);
+
+}
+
+
+
+const timeline = document.getElementById('timeline');
+const ukupnaPitanja = 5;
+
+updateTimeline = (pitanje) => {
+ const procent = (pitanje / ukupnaPitanja) * 100;
+ timeline.style.width = procent + '%';
+}
+
+getOpcije = (pitanje) => {
+ if(pitanje === 1){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 2){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: true},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 3){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: true},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: false}
+ ];
+ } else if(pitanje === 4){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: true}
+ ];
+ } else if(pitanje === 5){
+ return [
+ {el: prvo, tacno: false},
+ {el: drugo, tacno: false},
+ {el: trece, tacno: false},
+ {el: cetvrto, tacno: true}
+ ];
+ }
+}
+
+const snimiPogresnoPitanje = (pitanjeBroj, korisnikovOdgovor) => {
+ const data = pitanjaData[pitanjeBroj];
+ if (!data) return;
+
+ const pogresnoPitanje = {
+ id: `sociologija_${pitanjeBroj}_${Date.now()}`,
+ kategorija: '社会学',
+ pitanje: data.pitanje,
+ opcije: data.opcije,
+ korisnikovOdgovor: korisnikovOdgovor,
+ tacanOdgovor: data.tacanOdgovor,
+ objasnjenje: data.objasnjenje,
+ vreme: new Date().toISOString()
+ };
+
+ let pogresnaPitanja = JSON.parse(localStorage.getItem('wrongQuestions') || '[]');
+
+ const postojece = pogresnaPitanja.find(p =>
+ p.kategorija === '社会学' && p.pitanje === data.pitanje
+ );
+
+ if (!postojece) {
+ pogresnaPitanja.push(pogresnoPitanje);
+ localStorage.setItem('wrongQuestions', JSON.stringify(pogresnaPitanja));
+ }
+};
+
+proveri.onclick = () => {
+ const opcije = getOpcije(pitanje);
+ const izabrana = opcije.find(opt => opt.el.checked);
+
+ if(!izabrana){
+ tacno_netacno.style.color = '#374151'
+ tacno_netacno.innerText = '请选择一个答案!';
+ return;
+ }
+
+ proveri.style.display = 'none';
+ sledece.style.display = 'block';
+
+ const korisnikovOdgovor = izabrana.el.nextElementSibling.innerText;
+ const data = pitanjaData[pitanje];
+
+ if(izabrana.tacno){
+ tacno_netacno.innerHTML = `恭喜 ${moj_username},回答正确!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#22C55E';
+ bodovi += 10;
+
+ dodatak_bodova.style.animation = 'none';
+ void dodatak_bodova.offsetWidth;
+ dodatak_bodova.style.animation = 'bodoviIzlaz 2s ease-in-out 1';
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'tacanOdgovor 1s 1';
+ tacan_odgovor ++;
+ } else {
+ tacno_netacno.innerHTML = `回答错误!
${data.objasnjenje}`;
+ tacno_netacno.style.color = '#EF4444';
+
+ snimiPogresnoPitanje(pitanje, korisnikovOdgovor);
+
+ wrapper.style.animation = 'none';
+ void wrapper.offsetWidth;
+ wrapper.style.animation = 'netacanOdgovor 1s 1';
+ }
+ bodovi_tekst.innerText = `分数:${bodovi}`;
+
+ if(pitanje === 5){
+ sledece.innerText = '测验结束';
+ sledece.onclick = krajKviza;
+ }
+};
+krajKviza = () => {
+ let procenat = (tacan_odgovor / pitanje) * 100;
+ procenat = (procenat.toFixed(2));
+ if(bodovi === (pitanje * 10)) {
+ naslov.innerHTML = `恭喜 ${moj_username},测验完成!
所有问题都回答正确!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else if(bodovi === 0){
+ naslov.innerHTML = `${moj_username},测验完成!
很遗憾,没有答对任何题目!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }else {
+ naslov.innerHTML = `
恭喜 ${moj_username},测验完成!
得分:${bodovi}/${pitanje*10}
${procenat}%
`;
+ }
+
+
+ [prvo_tekst, drugo_tekst, trece_tekst, cetvrto_tekst].forEach(el => el.innerText = '');
+ document.querySelectorAll('.klikabilno').forEach(el => {
+ el.style.display = 'none';
+ });
+ proveri.style.display = 'none';
+ sledece.style.display = 'none';
+ bodovi_tekst.style.display = 'none'
+ igrac.style.display = 'none';
+ timeline_container.style.display = 'none';
+
+
+ tacno_netacno.style.color = '#111827'
+ tacno_netacno.innerHTML = '
⬅返回首页';
+ vrati.remove();
+}
+
+sledece.onclick = postaviPitanje;
+
+document.querySelectorAll(".klikabilno").forEach(el => {
+ el.addEventListener("click", () => {
+ document.querySelectorAll('.klikabilno').forEach(l => l.classList.remove('bold'));
+ el.classList.add('bold');
+ });
+});
\ No newline at end of file
diff --git a/wrong-questions.html b/wrong-questions.html
new file mode 100644
index 0000000..a7eba5e
--- /dev/null
+++ b/wrong-questions.html
@@ -0,0 +1,67 @@
+
+
+
+
+
+
+
+
+
+
+
错题库 - 知识测验
+
+
+
+
+
⬅ 返回首页
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1 / 0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
X
+
关于作者
+
我叫Goran Basic,19岁,是ITS - 高等信息技术职业学院的学生。
+
这个测验是出于个人好奇心和将在大学学到的知识应用于实践的愿望而创建的。
+
在项目开发过程中,我使用HTML、CSS和JavaScript研究了问题逻辑、评分和应用功能。
+
我的目标是通过独立工作进一步提高我的Web编程技能并测试我自己的想法。
+
+
+
+
+
+
\ No newline at end of file