-
Notifications
You must be signed in to change notification settings - Fork 0
/
quiz.js
82 lines (69 loc) · 2.16 KB
/
quiz.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
var modalToggle = document.getElementById('checkModal');
var myModalObj = new bootstrap.Modal(modalToggle); //Module
//console.log(myModalObj)
///myModal.show();
//1000ms = 1s * 60 = 60s = 1min * 5 = 5min
var min = 1;
var second = min * 60; //300s
var timer = document.getElementById('timer');
timer.innerText = min + ':' + '00'; // 5 : 00;
var suSec = 60;
var timeVar = setInterval(function() {
//display condition
suSec--;
timer.innerText = (min - 1) + ':' + ((suSec >= 10) ? suSec : '0' + suSec);
if(suSec <= 0) {
min = min - 1;
suSec = 60;
}
//timer condition
second--;
if(second <= 0) {
clearInterval(timeVar);
checkAns();
}
},1000);
var ansArr = [7, 7, 8, 6];
var scoreDiv = document.getElementById("score");
var userAns = [];
function storeAns(ele,queNo) {
userAns[(queNo -1)] = { ele: ele, val: ele.value };
var parentEle = ele.parentElement;
var grandEle = parentEle.parentElement;
for(var child = 0; child < grandEle.children.length; child++) {
grandEle.children[child].classList.remove("bg-danger","bg-success");
}
}
var score;
function checkAns() {
//alert(queNo);
score = 0;
for(var i=0; i< ansArr.length; i++ ) {
//console.log(userAns[i])
var queNo = i+1;
if(userAns[i]) { //if user have not given any ans (click nahi kia)
var ele = userAns[i].ele;
var parentEle = ele.parentElement;
if (userAns[i].val == ansArr[queNo - 1]) {
score++;
scoreDiv.textContent = score + "/4";
parentEle.classList.add("bg-success");
} else {
parentEle.classList.add("bg-danger");
}
}
var grandEle = document.getElementById("q"+queNo);
showCorrectAns(grandEle,ansArr[queNo - 1]);
}
showModal();
}
function showCorrectAns(grandEle, ans) {
for(var i=0; i<grandEle.children.length; i++ ) {
if(grandEle.children[i].firstElementChild.value == ans) {
grandEle.children[i].classList.add("bg-success");
}
}
}
function showModal() {
myModalObj.show(); //programming
}