<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no"> <title>测试答题</title> <script type="text/javascript" src="http://libs.useso.com/js/jquery/1.7.2/jquery.min.js"></script> <script type="text/javascript" src="js/questions.js"></script> <style type="text/css"> *{ padding:0px; margin:0px;} ul,li{ list-style:none;} a{ text-decoration:none;} a:hover{ text-decoration:none; cursor:pointer;} body{ line-height:1.5em;} /*question*/ .ques{ width:300px; margin:0px auto; padding:10px; height:150px; overflow:hidden;} .ques p{ font-weight:bold;} .ques .ops{ padding:15px;} .nextQues{ background: #9E9E9E; border: #666666; color: #fff; display: block; padding: 3px; text-align: center; font-weight: bold; width: 22%; float: right; margin-right: 10%; border-radius: 4px; } .result{ position: fixed; top: 82px; left: 40px; width: 77%; height: 39%; z-index: 99; background: rgba(0,0,0,0.7); display: none; border-radius: 15px; } .box { color: #fff; text-align: center; padding-top: 22%; } .btns { position: absolute; bottom: 19%; color: #fff; right: 5%; background: green; border-radius: 6px; padding: 4px; width: 60px; text-align: center; font-weight: 800; } .info { color: red; text-align: center; margin-top: 5%; display: none; } .checked { background-color:gray; font-weight:bold; } </style> </head> <body> <div class="QBox"> <div> <div class="ques1 ques"> <p>1.你喜欢吃什么水果?</p> <!-- <ul id="ul2" value="radio"> <li value="1" name="t1">A.苹果</li> <li value="2" name="t1">B.香蕉</li> <li value="3" name="t1">C.葡萄</li> <li value="4" name="t1">D.梨</li> </ul> --> <ul class="ops"> <li><input type="radio" value="1" name="t1"/><span>A.苹果</span></li> <li><input type="radio" value="2" name="t1"/><label>B.香蕉</label></li> <li><input type="radio" value="3" name="t1"/><label>C.葡萄</label></li> <li><input type="radio" value="4" name="t1"/><label>D.梨</label></li> </ul> </div> <div class="ques2 ques"> <p>2.你最喜欢什么颜色?</p> <ul class="ops"> <li><input type="radio" value="1" name="t2"/><label>A.蓝色</label></li> <li><input type="radio" value="2" name="t2"/><label>B.绿色</label></li> <li><input type="radio" value="3" name="t2"/><label>C.白色</label></li> <li><input type="radio" value="4" name="t2"/><label>D.紫色</label></li> </ul> </div> <div class="ques3 ques"> <p>3.你喜欢哪个城市?</p> <ul class="ops"> <li><input type="radio" value="1" name="t3"/><label>A.北京</label></li> <li><input type="radio" value="2" name="t3"/><label>B.上海</label></li> <li><input type="radio" value="3" name="t3"/><label>C.深圳</label></li> <li><input type="radio" value="4" name="t3"/><label>D.厦门</label></li> </ul> </div> <div class="ques4 ques"> <p>4.你最喜欢做的事?</p> <ul class="ops"> <li><input type="checkbox" value="1" name="t4" id="c1" /><label>A.看书</label></li> <li><input type="checkbox" value="2" name="t4" id="c2"/><label>B.听音乐</label></li> <li><input type="checkbox" value="3" name="t4" id="c3"/><label>C.旅行</label></li> <li><input type="checkbox" value="4" name="t4" id="c4"/><label>D.画画</label></li> </ul> <!-- <ul id="ul1" value="checkbox"> <li value="1">A.看书</li> <li value="2">B.听音乐</li> <li value="3">C.旅行</li> <li value="4">D.画画</li> </ul> --> </div> <!-- <div class="ques4 ques"> <p>4.你最喜欢做的事?</p> <ul class="ops"> <li><input type="radio" value="1" name="t4"/><label>A.看书</label></li> <li><input type="radio" value="2" name="t4"/><label>B.听音乐</label></li> <li><input type="radio" value="3" name="t4"/><label>C.旅行</label></li> <li><input type="radio" value="4" name="t4"/><label>D.画画</label></li> </ul> </div> --> </div> <a class="nextQues" >提交</a> <!-- 弹窗 --> <div class="result"> <div class="box">恭喜你答对了</div> <p class="btns">继续</p> </div> <div class="info">请选择选项</div> </div> <script language="javascript"> /*$(document).ready(function() { var ul1_value = ""; var ul2_value = ""; //多选 $("#ul1 li").click(function(){ $(this).toggleClass("checked"); $("#ul1 li[class='checked']").each(function(){ ul1_value = ul1_value + "," + $(this).attr("value"); }); $("#ul1_value").val(ul1_value); ul1_value = ""; }); //单选 $("#ul2 li").click(function(){ $(this).toggleClass("checked"); $("#ul2 li[value!='"+ $(this).attr("value")+"']").removeClass("checked"); if($(this).attr("class")=="checked"){ ul2_value = $(this).attr("value"); } $("#ul2_value").val(ul2_value); ul2_value = ""; }); }); */ </script> </body> </html>
// JavaScript Document $(function(){ var i=0; var n=$('.ques').size(); var lists=$('.ques'); var myansewr=[]; var trueanswer=new Array(); var trueanswer=[1,2,3,4]; //var trueanswer=['A','B','C','D']; lists.hide(); lists.first().show(); //提交按钮 $('.nextQues').click(function(){ var flag=0; if(i==0){ var flag=0; var obj1=document.getElementsByName('t1'); for(var k=0;k<obj1.length;k++){ if(obj1[k].checked){ flag=1; var a1=obj1[k].value; myansewr.push(k+1); if(a1.toString()==1){ //alert("恭喜你答对了"); $(".result").show(500); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是A"); //alert("很遗憾答错了,正确答案是A"); } } } if( flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } $(".btns").click(function () { $(".result").hide(); }) } if(i==1){ var flag=0; var obj2=document.getElementsByName('t2'); for(var k=0;k<obj2.length;k++){ if(obj2[k].checked){ myansewr.push(k+1); var a2=obj2[k].value; //alert(obj2[k].value); if(a2.toString()==2){ $(".result").show(500); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是B"); } flag=1; } } if(flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } } if(i==2){ var flag=0; var obj3=document.getElementsByName('t3'); for(var k=0;k<obj3.length;k++){ if(obj3[k].checked){ flag=1; var a3=obj3[k].value; myansewr.push(k+1); if(a3.toString()==3){ $(".result").show(500); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是C"); } } } if(flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } } /*多选题*/ if(i==n-1){ var flag=0; // var obj4=document.getElementById("c1"); // var obj5=document.getElementById("c4"); var obj4=document.getElementsByName('t4'); for(var k=0;k<obj4.length;k++){ if(obj4[k].checked){ var a4=obj4[k].value; if(a4.toString()==1 && a4.toString()==4){ $(".result").show(500); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是A、D"); } myansewr.push(k+1); flag=1; } } if(flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } $('.nextQues').text("完成"); if($('.nextQues').text()=="完成"){ $('.nextQues').click(function(){ //alert("你的答案是:"+myansewr); if(myansewr.toString()==trueanswer.toString()){ // $(".result").show(); }else{ $(".result").show(); $(".box").html("还需要继续努力哟!"); } }) } } i++; lists.eq(i).show(); lists.eq(i).siblings().hide(); function checkedTest(){ var count = 0; var checkArry = document.getElementsByName("t4"); for (var i = 0; i < checkArry.length; i++) { if(checkArry[i].checked == true){ //选中的操作 count++; } } /* if( count == 0 ){ alert("请选择!") }*/ } checkedTest(); }) })
应该还可以改进。
$(function(){ var i=0; var n=$('.ques').size(); var lists=$('.ques'); var myansewr=[]; var annew=[]; var trueanswer=new Array(); var trueanswer=[1,2,3,4]; //var trueanswer=['A','B','C','D']; lists.hide(); lists.first().show(); //提交按钮 $('.nextQues').click(function(){ var flag=0; if(i==0){ var flag=0; var obj1=document.getElementsByName('t1'); for(var k=0;k<obj1.length;k++){ if(obj1[k].checked){ var a1=obj1[k].value; if(a1.toString()==1){ myansewr.push(k+1); flag=1; //alert("恭喜你答对了"); $(".result").show(500); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是A"); //alert("很遗憾答错了,正确答案是A"); } } } if( flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } $(".btns").click(function () { $(".result").hide(); }) } if(i==1){ var flag=0; var obj2=document.getElementsByName('t2'); for(var k=0;k<obj2.length;k++){ if(obj2[k].checked){ var a2=obj2[k].value; //alert(obj2[k].value); if(a2.toString()==2){ myansewr.push(k+1); flag=1; $(".result").show(500); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是B"); } } } if(flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } } if(i==2){ var flag=0; var obj3=document.getElementsByName('t3'); for(var k=0;k<obj3.length;k++){ if(obj3[k].checked){ var a3=obj3[k].value; if(a3.toString()==3){ myansewr.push(k+1); flag=1; $(".result").show(500); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是C"); } } } if(flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } } /*多选题*/ if(i==n-1){ var flag=0; // var obj4=document.getElementById("c1"); // var obj5=document.getElementById("c4"); var obj4=document.getElementsByName('t4'); for(var k=0;k<obj4.length;k++){ if(obj4[k].checked){ var a4=obj4[k].value; annew.push(a4); //alert(a4); //if(a4.toString()==1 && a4.toString()==4){ // $(".result").show(500); // }else{ // $(".result").show(500); // $(".box").html("很遗憾答错了,正确答案是A、D"); // } // myansewr.push(k+1); // flag=1; } } if(annew.length>0 && annew.length==2){ if(jQuery.inArray("1", annew)>=0&& jQuery.inArray("4", annew)>= 0){ flag=1; $(".result").show(500); myansewr.push(4); }else{ $(".result").show(500); $(".box").html("很遗憾答错了,正确答案是A、D"); annew.length=0; } } if(flag==0){ i--; $('.info').show(); setTimeout("$('.info').hide();",1500); } $('.nextQues').text("完成"); if($('.nextQues').text()=="完成"){ $('.nextQues').click(function(){ //alert("你的答案是:"+myansewr); if(myansewr.length==trueanswer.length){ $(".box").html("恭喜全部答对!"); }else{ $(".result").show(); $(".box").html("还需要继续努力哟!"); } }) } } i++; lists.eq(i).show(); lists.eq(i).siblings().hide(); function checkedTest(){ var count = 0; var checkArry = document.getElementsByName("t4"); for (var i = 0; i < checkArry.length; i++) { if(checkArry[i].checked == true){ //选中的操作 count++; } } /* if( count == 0 ){ alert("请选择!") }*/ } checkedTest(); }) })
非常感谢,,我自己再完善