
08.07.2009, 22:27
|
|
Новичок
Регистрация: 08.07.2009
Сообщений: 2
С нами:
8864482
Репутация:
0
|
|
Вот простенький javascript (тест на 25 вопросов):
Код:
<SCRIPT language=JavaScript>
var res="1111122222333334444411111"
function check_me()
{
var count=0
with(document.test)
{
if (!Q1[0].checked&&!Q1[1].checked&&!Q1[2].checked&&!Q1[3].checked) {count+=1};
if (!Q2[0].checked&&!Q2[1].checked&&!Q2[2].checked&&!Q2[3].checked) {count+=1};
if (!Q3[0].checked&&!Q3[1].checked&&!Q3[2].checked&&!Q3[3].checked) {count+=1};
if (!Q4[0].checked&&!Q4[1].checked&&!Q4[2].checked&&!Q4[3].checked) {count+=1};
if (!Q5[0].checked&&!Q5[1].checked&&!Q5[2].checked&&!Q5[3].checked) {count+=1};
if (!Q6[0].checked&&!Q6[1].checked&&!Q6[2].checked&&!Q6[3].checked) {count+=1};
if (!Q7[0].checked&&!Q7[1].checked&&!Q7[2].checked&&!Q7[3].checked) {count+=1};
if (!Q8[0].checked&&!Q8[1].checked&&!Q8[2].checked&&!Q8[3].checked) {count+=1};
if (!Q9[0].checked&&!Q9[1].checked&&!Q9[2].checked&&!Q9[3].checked) {count+=1};
if (!Q10[0].checked&&!Q10[1].checked&&!Q10[2].checked&&!Q10[3].checked) {count+=1};
if (!Q11[0].checked&&!Q11[1].checked&&!Q11[2].checked&&!Q11[3].checked) {count+=1};
if (!Q12[0].checked&&!Q12[1].checked&&!Q12[2].checked&&!Q12[3].checked) {count+=1};
if (!Q13[0].checked&&!Q13[1].checked&&!Q13[2].checked&&!Q13[3].checked) {count+=1};
if (!Q14[0].checked&&!Q14[1].checked&&!Q14[2].checked&&!Q14[3].checked) {count+=1};
if (!Q15[0].checked&&!Q15[1].checked&&!Q15[2].checked&&!Q15[3].checked) {count+=1};
if (!Q16[0].checked&&!Q16[1].checked&&!Q16[2].checked&&!Q16[3].checked) {count+=1};
if (!Q17[0].checked&&!Q17[1].checked&&!Q17[2].checked&&!Q17[3].checked) {count+=1};
if (!Q18[0].checked&&!Q18[1].checked&&!Q18[2].checked&&!Q18[3].checked) {count+=1};
if (!Q19[0].checked&&!Q19[1].checked&&!Q19[2].checked&&!Q19[3].checked) {count+=1};
if (!Q20[0].checked&&!Q20[1].checked&&!Q20[2].checked&&!Q20[3].checked) {count+=1};
if (!Q21[0].checked&&!Q21[1].checked&&!Q21[2].checked&&!Q21[3].checked) {count+=1};
if (!Q22[0].checked&&!Q22[1].checked&&!Q22[2].checked&&!Q22[3].checked) {count+=1};
if (!Q23[0].checked&&!Q23[1].checked&&!Q23[2].checked&&!Q23[3].checked) {count+=1};
if (!Q24[0].checked&&!Q24[1].checked&&!Q24[2].checked&&!Q24[3].checked) {count+=1};
if (!Q25[0].checked&&!Q25[1].checked&&!Q25[2].checked&&!Q25[3].checked) {count+=1};
if (count>0) {alert("Вы выполнили не все задания. Проверьте себя.")}
else answer()
}
}
function control(k,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,f25)
{
if (k==1&&f1.checked) return true;
if (k==2&&f2.checked) return true;
if (k==3&&f3.checked) return true;
if (k==4&&f4.checked) return true;
if (k==5&&f5.checked) return true;
if (k==6&&f6.checked) return true;
if (k==7&&f7.checked) return true;
if (k==8&&f8.checked) return true;
if (k==9&&f9.checked) return true;
if (k==10&&f10.checked) return true;
if (k==11&&f11.checked) return true;
if (k==12&&f12.checked) return true;
if (k==13&&f13.checked) return true;
if (k==14&&f14.checked) return true;
if (k==15&&f15.checked) return true;
if (k==16&&f16.checked) return true;
if (k==17&&f17.checked) return true;
if (k==18&&f18.checked) return true;
if (k==19&&f19.checked) return true;
if (k==20&&f20.checked) return true;
if (k==21&&f21.checked) return true;
if (k==22&&f22.checked) return true;
if (k==23&&f23.checked) return true;
if (k==24&&f24.checked) return true;
if (k==25&&f25.checked) return true;
return false;
}
function answer()
{
answ="";
with(document)
{
answ+=control(res.charAt(0),test.Q1[0],test.Q1[1],test.Q1[2],test.Q1[3])?"1":"0"
answ+=control(res.charAt(1),test.Q2[0],test.Q2[1],test.Q2[2],test.Q2[3])?"1":"0"
answ+=control(res.charAt(2),test.Q3[0],test.Q3[1],test.Q3[2],test.Q3[3])?"1":"0"
answ+=control(res.charAt(3),test.Q4[0],test.Q4[1],test.Q4[2],test.Q4[3])?"1":"0"
answ+=control(res.charAt(4),test.Q5[0],test.Q5[1],test.Q5[2],test.Q5[3])?"1":"0"
answ+=control(res.charAt(5),test.Q6[0],test.Q6[1],test.Q6[2],test.Q6[3])?"1":"0"
answ+=control(res.charAt(6),test.Q7[0],test.Q7[1],test.Q7[2],test.Q7[3])?"1":"0"
answ+=control(res.charAt(7),test.Q8[0],test.Q8[1],test.Q8[2],test.Q8[3])?"1":"0"
answ+=control(res.charAt(8),test.Q9[0],test.Q9[1],test.Q9[2],test.Q9[3])?"1":"0"
answ+=control(res.charAt(9),test.Q10[0],test.Q10[1],test.Q10[2],test.Q10[3])?"1":"0"
answ+=control(res.charAt(10),test.Q11[0],test.Q11[1],test.Q11[2],test.Q11[3])?"1":"0"
answ+=control(res.charAt(11),test.Q12[0],test.Q12[1],test.Q12[2],test.Q12[3])?"1":"0"
answ+=control(res.charAt(12),test.Q13[0],test.Q13[1],test.Q13[2],test.Q13[3])?"1":"0"
answ+=control(res.charAt(13),test.Q14[0],test.Q14[1],test.Q14[2],test.Q14[3])?"1":"0"
answ+=control(res.charAt(14),test.Q15[0],test.Q15[1],test.Q15[2],test.Q15[3])?"1":"0"
answ+=control(res.charAt(15),test.Q16[0],test.Q16[1],test.Q16[2],test.Q16[3])?"1":"0"
answ+=control(res.charAt(16),test.Q17[0],test.Q17[1],test.Q17[2],test.Q17[3])?"1":"0"
answ+=control(res.charAt(17),test.Q18[0],test.Q18[1],test.Q18[2],test.Q18[3])?"1":"0"
answ+=control(res.charAt(18),test.Q19[0],test.Q19[1],test.Q19[2],test.Q19[3])?"1":"0"
answ+=control(res.charAt(19),test.Q20[0],test.Q20[1],test.Q20[2],test.Q20[3])?"1":"0"
answ+=control(res.charAt(20),test.Q21[0],test.Q21[1],test.Q21[2],test.Q21[3])?"1":"0"
answ+=control(res.charAt(21),test.Q22[0],test.Q22[1],test.Q22[2],test.Q22[3])?"1":"0"
answ+=control(res.charAt(22),test.Q23[0],test.Q23[1],test.Q23[2],test.Q23[3])?"1":"0"
answ+=control(res.charAt(23),test.Q24[0],test.Q24[1],test.Q24[2],test.Q24[3])?"1":"0"
answ+=control(res.charAt(24),test.Q25[0],test.Q25[1],test.Q25[2],test.Q25[3])?"1":"0"
showResult();
}
}
function showResult()
{
var nok=0;
var i,s;
for (i=0;i<answ.length;i++) {nok+=answ.charAt(i)=="1"?1:0;}
if(nok<=6) s='"ОЧЕНЬ ПЛОХО"';
if(nok>6 && nok<10) s='"НЕУДОВЛЕТВОРИТЕЛЬНО"';
if(nok==10) s='"НЕУДОВЛЕТВОРИТЕЛЬНО"';
if(nok>10 && nok<15) s='"УДОВЛЕТВОРИТЕЛЬНО"';
if(nok==15) s='"УДОВЛЕТВОРИТЕЛЬНО"';
if(nok>15 && nok<21) s='"ХОРОШО"';
if(nok==21) s='"ХОРОШО"';
if(nok>21) s='"ОТЛИЧНО"';
document.test.s1.value="Количество правильных ответов "+nok+" из 25. Ваша оценка "+s+". Загляните в окно рядом с номером задания. Если ответ правильный, то там (+). Если Вы ошиблись, там (-).";
with(document.test)
{
if (answ.charAt(0)=="1") {T1.value=" +"} else {T1.value=" -"};
if (answ.charAt(1)=="1") {T2.value=" +"} else {T2.value=" -"};
if (answ.charAt(2)=="1") {T3.value=" +"} else {T3.value=" -"};
if (answ.charAt(3)=="1") {T4.value=" +"} else {T4.value=" -"};
if (answ.charAt(4)=="1") {T5.value=" +"} else {T5.value=" -"};
if (answ.charAt(5)=="1") {T6.value=" +"} else {T6.value=" -"};
if (answ.charAt(6)=="1") {T7.value=" +"} else {T7.value=" -"};
if (answ.charAt(7)=="1") {T8.value=" +"} else {T8.value=" -"};
if (answ.charAt(8)=="1") {T9.value=" +"} else {T9.value=" -"};
if (answ.charAt(9)=="1") {T10.value=" +"} else {T10.value=" -"};
if (answ.charAt(10)=="1") {T11.value=" +"} else {T11.value=" -"};
if (answ.charAt(11)=="1") {T12.value=" +"} else {T12.value=" -"};
if (answ.charAt(12)=="1") {T13.value=" +"} else {T13.value=" -"};
if (answ.charAt(13)=="1") {T14.value=" +"} else {T14.value=" -"};
if (answ.charAt(14)=="1") {T15.value=" +"} else {T15.value=" -"};
if (answ.charAt(15)=="1") {T16.value=" +"} else {T16.value=" -"};
if (answ.charAt(16)=="1") {T17.value=" +"} else {T17.value=" -"};
if (answ.charAt(17)=="1") {T18.value=" +"} else {T18.value=" -"};
if (answ.charAt(18)=="1") {T19.value=" +"} else {T19.value=" -"};
if (answ.charAt(19)=="1") {T20.value=" +"} else {T20.value=" -"};
if (answ.charAt(20)=="1") {T21.value=" +"} else {T21.value=" -"};
if (answ.charAt(21)=="1") {T22.value=" +"} else {T22.value=" -"};
if (answ.charAt(22)=="1") {T23.value=" +"} else {T23.value=" -"};
if (answ.charAt(23)=="1") {T24.value=" +"} else {T24.value=" -"};
if (answ.charAt(24)=="1") {T25.value=" +"} else {T25.value=" -"};
}
}
</SCRIPT>
Firebug выдает ошибку: uncaught exception: [Exception... "Not enough arguments [nsIDOMWindowInternal.scroll]"
nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)" location: "JS frame :: file:///G:/%D0...0%B2.html :: onload :: line 1" data: no]
Может кто объяснить, в чем тут дело? A то я новичек, потому никак и не соображу, чего Firebug ругается 
|
|
|

08.07.2009, 22:31
|
|
Новичок
Регистрация: 08.07.2009
Сообщений: 2
С нами:
8864482
Репутация:
0
|
|
Просто кроме этого куска, больше ничего не изменялось. А в исходнике никаких ошибок не обнаруживается.
|
|
|

08.07.2009, 22:29
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами:
9649706
Репутация:
3338
|
|
А что, весь код из яваскрипта состоит? Молодец
|
|
|

09.07.2009, 14:50
|
|
Постоянный
Регистрация: 04.12.2007
Сообщений: 424
С нами:
9702986
Репутация:
479
|
|
как на jquery получить то что стоит в строке адреса после #?
|
|
|

09.07.2009, 15:19
|
|
Участник форума
Регистрация: 08.04.2008
Сообщений: 242
С нами:
9520978
Репутация:
229
|
|
если правильно тебя понял, то так, без jquery правда..
var tmp='https://forum.antichat.ru/threadnav128933-2-10.html#goto_threadrating'; // заменить на location.href
var arr = tmp.match(/#(.+)/);
alert(arr[1]);// выведет goto_threadrating
|
|
|

10.07.2009, 15:46
|
|
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
С нами:
9560486
Репутация:
1809
|
|
Не могу разобраться, есть у меня скрипт проверки Тиц и PR , там есть функция:
Код HTML:
$(document).ready(function(){
$('#check').click(function(){
if( !$('#url_list').val().length ){
alert('Введите хотябы один url');
return false;
}
/*$('#result').html('<tr class="table_header"><td width="50%" height="25">URL (домен)</td><td width="25%">PR</td><td width="25%">ТИЦ</td></tr>');*/
var url_array = $('#url_list').val().split(/[\n\r]+/);
document.all.result_div.style.display="block";
document.all.result_table.style.display="block";
for( var i = 0; i < url_array.length; i++ ){
color = (i % 2 == 0) ? 'F5F5EA' : 'FFFCF8';
$('#result').append('<tr bgcolor="#'+ color +'"><td width="50%">'+ url_array[i] +'</td><td id="p_'+ i +'" width="25%"><img src="../../../cncat_engine/images/load_small.gif" border="0" /></td><td id="t_'+ i +'" width="25%"><img src="../../../cncat_engine/images/load_small.gif" border="0" /></td></tr>')
get_pr(url_array[i],i);
get_yandex(url_array[i],i);
}
});
});
Всё ок, но вот, если нажать потом на кнопку еще раз, табличка начинает ниже плодить ряды, а мне нужно, чтобы всё удалялось и по новой появлялось. Как мне удалить эти <tr><td></td></tr> ? 
|
|
|

10.07.2009, 15:51
|
|
Участник форума
Регистрация: 08.04.2008
Сообщений: 242
С нами:
9520978
Репутация:
229
|
|
в самом начале функции сделай
$('#result').empty();
|
|
|

10.07.2009, 16:00
|
|
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
С нами:
9560486
Репутация:
1809
|
|
m0nsieur, большое спасибо! То что нужно! 
|
|
|

13.07.2009, 00:03
|
|
Участник форума
Регистрация: 12.03.2008
Сообщений: 254
С нами:
9560218
Репутация:
238
|
|
Проблема такова,как сделать глобальные переменные в eval?
есле сделать так:
function fff(){
eval("var name=value");
}
То поза функцыей fff переменная name доступна не будет,как ето исправить?
|
|
|

13.07.2009, 02:58
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
С нами:
8915117
Репутация:
389
|
|
объявить переменную перед функцией и присвоить значение в функции?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|