[Оптимизация] Тест написанный javascripts
Есть тест на js
Мне кажется можно сделать гораздо проще ( из опыта php ), помогите пожалуйста оптимизировать, изменить, уменьшить код ps: js не знаю, php применить не могу( голимый статический html сайт с маленьким тестом ) <html> <head> <title>Тест с физики за 8 класс</title> <script language="javascript" type="text/javascript"> var cnt=-1; var points=0; var itemSelected=1; aArray1=['<font size=5>35 м/с</font>','<font size=5>0,0003 м/с</font>','<font size=5>5 км/час</font>']; aArray2=['<font size=5>15 м/с</font>','<font size=5>10,0002 м/с</font>','<font size=5>10 км/час</font>']; aArray3=['<font size=5>25 м/с</font>','<font size=5>0,0002 м/с</font>','<font size=5>15 км/час</font>']; aArray4=['<font size=5>20 м/с</font>','<font size=5>10,0003 м/с</font>','<font size=5>20 км/час</font>']; aArray5=['<font size=5>10 м/с, 15 м/с, 20м/с </font>','<font size=5>1,0003 м/с</font>','<font size=5>25 км/час</font>']; aArray6=['<font size=5>10 м/с, 12,5 м/с, 15 м/с</font>','<font size=5>1,0002 м/с</font>','<font size=5>30 км/час</font>']; qArray=['Атомобиль проехал за первую секунду 10м, за вторую 15м, а за третью 20м высчитать среднюю скорость за каждую секунду.', 'Улитка по стволу дерева ползет 50см за 1 час, а потом еще 70см за 0,5час. Какая была средняя скорость?(округлено до червертого знака)','Велосепедист проехал полпути со скоростью 20км.час, а все остальное прошел пешком. Какая скорость ходьбы?, если ехал он 1/5 всего времени.']; rArray1=['0','0','4']; rArray2=['0','0','0']; rArray3=['0','4','0']; rArray4=['0','0','0']; rArray5=['4','0','0']; rArray6=['0','0','0']; function goNext(e){ var pts=(eval('rArray'+itemSelected+'['+(cnt)+']')); if (pts) points=points+Number(pts); if ((cnt+1)==qArray.length) { checkResults(); return; } if((cnt+1)==(qArray.length-1)){ var bt=document.getElementById("btn"); bt.value='Показать балл'; } cnt++; var cnt1=document.getElementById("counter"); var sp0=document.getElementById("question"); var sp1=document.getElementById("answer1"); var sp2=document.getElementById("answer2"); var sp3=document.getElementById("answer3"); var sp4=document.getElementById("answer4"); var sp5=document.getElementById("answer5"); var sp6=document.getElementById("answer6"); sp0.innerHTML=qArray[cnt]; sp1.innerHTML=aArray1[cnt]; sp2.innerHTML=aArray2[cnt]; sp3.innerHTML=aArray3[cnt]; sp4.innerHTML=aArray4[cnt]; sp5.innerHTML=aArray5[cnt]; sp6.innerHTML=aArray6[cnt]; cnt1.innerHTML=cnt+1; } function checkResults(){ alert('Результат в баллах '+points); } </script> </head> <body BGCOLOR="#836FFF" onLoad="javascript:goNext(event);"> <center><SPAN id="counter"></SPAN>. <SPAN id="question"></SPAN></center><br /><br /> <input type="radio" name="opt" id="opt1" onClick="javascript:itemSelected=1;"><SPAN id="answer1"></SPAN><br/> <input type="radio" name="opt" id="opt2" onClick="javascript:itemSelected=2;"><SPAN id="answer2"></SPAN><br/> <input type="radio" name="opt" id="opt3" onClick="javascript:itemSelected=3;"><SPAN id="answer3"></SPAN><br/> <input type="radio" name="opt" id="opt4" onClick="javascript:itemSelected=4;"><SPAN id="answer4"></SPAN><br/> <input type="radio" name="opt" id="opt5" onClick="javascript:itemSelected=5;"><SPAN id="answer5"></SPAN><br/> <input type="radio" name="opt" id="opt6" onClick="javascript:itemSelected=6;"><SPAN id="answer6"></SPAN><br/> <br /> <div align="center"><input id="btn" type="button" onClick="javascript:goNext()" value="Следующий вопрос" /></div> <FORM ACTION="receive.html" METHOD=POST> <br><center> <a href="javascript:window.location.reload()">Пройти Тест повторно</a></center><br> <center> <b> <font size="4"> </FORM> </body> </html> |
жестокий код:)
ещё как можно оптимизировать, но лениво. Проще с нуля. Напишите задачу |
Создать тест на js
Даны 5-7 вопросов, 4 варианта ответа, только один правельный, по завершению теста - выдаётся результат сколько правильных ответов Вот собственно и всё Вот скриншот теста на бумаге: ![]() |
Вот ещё нашёл тест:
<Html> <head> <title>Тест по JavaScript</title> <Meta http-equiv = "Content-Type" content = "text/html; charset = windows-1251"> <Script language="JavaScript"> <!-- function funk() {v1=0;v2=0;v3=0;v4=0;v5=0;v6=0; var d=document; if(d.form1.otv1[1].checked==true)v1=1; if(d.form1.otv2[2].checked==true)v2=1; if(d.form1.otv3[0].checked==true)v3=1; if(d.form1.otv4[0].checked==true)v4=1; if(d.form1.otv5[2].checked==true)v5=1; if(d.form1.otv6[0].checked==true)v6=1; v=v1+v2+v3+v4+v5+v6; p=v*100/6; if (p>=90) {p="Вы получили 5 балов";} else if(p<100 & p>=75){p="Вы получили 4 балa";} else if(p<50 & p>=55){p="Вы получили 3 бала";} else {p="Вы получили 2 бала";} DispWin=window.open('','NewWin','status=no,width=500,height=300') message="<ul><li><b>Вы ответили правильно на</b> "+v+" вопроса"; message1="<li><b>Оценка:</b> "+p; DispWin.document.write(message+ message1); } //--> </Script> </head> <body bgcolor="pink"> <h1><center>Тест по JavaScript</center></h1> <form name="form1"> <h3>Вопрос 1</h3> <h3>JavaScript - это ...<p> 1.<input type="radio" name="otv1">численные переменные,которые могут содержать целые числа и числа с плавающей точкой. <br> 2.<input type="radio" name="otv1"> язык для составления сценариев, позволяющих выполнять разные действия непосредственно на машине пользователя. Распологаются данные сценарии внутри HTML документов <br> 3.<input type="radio" name="otv1">примечания программиста, которые будут игнорированы интерпритатором.<br> <h3>Вопрос 2</h3> <h4>Событие OnClick ...<p></h4> 1.<input type="radio" name="otv2">реагирует при нажатии и держании клавиши.<br> 2.<input type="radio" name="otv2">реагирует на двойной щелчок курсора мыши.<br> 3.<input type="radio" name="otv2">реагирует на одинарный щелчок курсора мыши.<br> <h3>Вопрос 3</h3> <h4>Для чего используеться метода confirm ?<p></h4> 1.<input type="radio" name="otv3">для сообщений, требующих принятия решения пользователем - в окне находяться две кнопки - "Ok" и "Отмена". <br> 2.<input type="radio" name="otv3">для вывода предупреждений, какой-нибудь информации<br> 3.<input type="radio" name="otv3">для перехода на другую страницу<br> <h3>Вопрос 4</h3> <h4>Функции - это ...<p></h4> 1.<input type="radio" name="otv4">последовательность операторов, выполняющих какую-либо задачу.<br> 2.<input type="radio" name="otv4">последовательность методов, выполняющих какую-либо задачу.<br> 3.<input type="radio" name="otv4">последовательность событий, выполняющих какую-либо задачу.<br> <h3>Вопрос 5</h3> <h4>С какого символа начинаеться однострочный ккомментарий?<p></h4> 1.<input type="radio" name="otv5">"*/"<br> 2.<input type="radio" name="otv5">"/*" <br> 3.<input type="radio" name="otv5">"//"<br> <h3>Вопрос 6</h3> <h4>Какие типы переменных бывают?<p></h4> 1.<input type="radio" name="otv6">варианты 2,3,4.<br> 2.<input type="radio" name="otv6">логические<br> 3.<input type="radio" name="otv6">строковые<br> 4.<input type="radio" name="otv6">численные<br> <input type="button" name="s4et" value="Подсчитать" onclick="funk(form1)"> <input type="reset" value="Очистить"> </form> </BODY> </HTML> |
Часовой пояс GMT +3, время: 14:11. |