恨死了不兼容 - Web 开发 / Ajax
搞了一天,也没把下面的问题搞兼容,在IE下,setInterval ajax可用,在谷歌和FF下都不起作用,用了无数方法,还是没有作用,不知道是我代码写得有误还是怎么的,知道的看一下
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="exam_now.aspx.cs" Inherits="Maj.WebSite.exam_now" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <link href="skins/exampaper.css" rel="stylesheet" type="text/css" /> <script src="/include/js/jquery-1.7.1.min.js" type="text/javascript"></script> <script src="/include/js/tab.js" type="text/javascript"></script> <script src="/include/js/jquery.cookie.js" type="text/javascript"></script> <script language="javascript" type="text/javascript"> var id = <%#cntId %>; var tim=null; var xmlHttpequest=null; function finishExam() { clearInterval(tim); var exam1 = ""; var exam2 = ""; var exam3 = ""; var result = ""; $(".paper1 .examvalue").each(function () { var sign = $(this).attr("rel"); var tmp = ""; $("#ansower_" + sign + " input[type='radio']").each(function () { if ($(this).attr("checked")) tmp = $(this).val(); //if ($(this).attr("checked")) tmp += "-" + $(this).val(); }); exam1 += tmp + "|"; }); $(".paper2 .examvalue").each(function () { var tmp = ""; // $(this).attr("rel") + "-"; $("#ansower_" + $(this).attr("rel") + " input[type='checkbox']").each(function () { if ($(this).attr("checked")) tmp += $(this).val() + ","; }); tmp = tmp.substr(0, tmp.length - 1) + "|"; exam2 += tmp; }); $(".paper3 textarea").each(function () { exam3 += $(this).val() + "|"; }); result = exam1 + exam2 + exam3; result = result.substr(0, result.length - 1); $.get("/tools/check_exam.aspx", { cntid:<%#cntId %>, logid:<%#logId %>, data: result, r: Math.random() }, function(data) { var txt=data.toString().split("|"); p1.innerHTML=txt[0]; p2.innerHTML=txt[1]; p3.innerHTML=txt[2]; }); //$.cookie("exam", exam1 + exam2); AdLayer1.innerHTML="<strong>正在改您的卷子!</strong>"; AdLayer1.innerHTML="<strong>成功是从错题开始<br>请认真查看错题</strong><br><br><a href=\"exam_complete.aspx?id=" + <%#cntId %> + "&logid=" + <%#logId %> + "\">查看排名</a>"; } /* function ieajx () { if(window.XMLHttpRequest) { xmlHttpequest=new XMLHttpRequest(); } else if(window.ActiveXObject) { xmlHttpequest=new XMLHttpRequest("MSXML2.XMLHTTP"); } if(xmlHttpequest) { xmlHttpequest.onreadystatechange=getTxt; var sendtext="cntid="+<%#cntId %>+"&logid="+<%#logId %>+"&data="+result+"&r="+Math.random(); xmlHttpequest.open("POST","/tools/check_exam.aspx",true); xmlHttpequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded;"); xmlHttpequest.send(sendtext); } } function getTxt () { if(xmlHttpequest&&xmlHttpequest.readyState==4) { if(xmlHttpequest.status==200) { AdLayer1.innerHTML="<strong>成功是从错题开始<br>请认真查看错题</strong><br><br><a href=\"exam_complete.aspx?id=" + <%#cntId %> + "&logid=" + <%#logId %> + "\">查看排名</a>"; var data=xmlHttpequest.responseText; var txt=data.split("|"); p1.innerHTML=txt[0]; p2.innerHTML=txt[1]; p3.innerHTML=txt[2]; } } }*/ var maxtime = <%#paperInfo.Minutes %> * 60 //一个小时,按秒计算,自己调整! window.onload=function (){ tim=self.setInterval("CountDown()", 1000) } function CountDown() { if (maxtime >= 0) { var minutes = Math.floor(maxtime / 60); var seconds = Math.floor(maxtime % 60); var msg = "剩余" + minutes + "分"; if(seconds < 10) { msg += "0"; } msg+= seconds + "秒"; document.getElementById("timer").innerHTML=msg; if (maxtime == 5 * 60) { alert('注意,还有5分钟!'); } --maxtime; } else { clearInterval(tim); finishExam(); } } function document.oncontextmenu() { event.returnValue=false; } //屏蔽鼠标右键 function KeyDown() { if ((window.event.altKey) && ((window.event.keyCode == 37) || (window.event.keyCode == 39))) { event.returnValue = false; } if ((event.keyCode == 8) || (event.keyCode == 116)) { //屏蔽 F5刷新键 event.keyCode = 0; event.returnValue = false; } if ((event.ctrlKey) && (event.keyCode == 78)) { //屏蔽Ctrl+n event.returnValue = false; } if ((event.shiftKey) && (event.keyCode == 121)) { //屏蔽shift+F10 event.returnValue = false; } } </script></head><body onkeydown="KeyDown()" onbeforeunload="" oncontextmenu="event.returnValue=false"> <form id="form1" runat="server"> <div id="header"> <div class="left logo"> <img src="/images/kszx.gif" /> </div> <div class="right userInfo"> 欢迎您,<%#username %> 帐户余额:<%#oluserinfo.UserMoney %>E币 <a href="#">充值</a> <a href="#">收藏本站</a> </div> </div> <div id="paper"> <div class="ksxx">考试时间:<%#paperInfo.Minutes %> 分钟 考生:<%#username %> 总分 :<%#paperInfo.Total %> 分</div> <h2 class="kstit"><%#paperInfo.Title %></h2> <div id="paperTab"><span id="paper1">单选题</span><span id="paper2">多选题</span><span id="paper3">问答题</span></div> <div class="paperTabCnt"> <div class="paper1" id="p1"> <h2 class="ptit">一、单项选择题(共<%#iei.Count%>题,四个备选答案中,有一个最符合题意)</h2> <%#exam1.ToString() %> </div> <div class="paper2" id="p2"> <h2 class="ptit">二、多项选择题(共<%#multi.Count%>题,五个备选答案中,有2-4个符合题意,少选,选对一个0.5分,选错得0分)</h2> <%#exam2.ToString() %> </div> <div class="paper3" id="p3"> <h2 class="ptit">三、问答题(共<%#qa.Count %>题,不计分,提交后自行对照参考答案)</h2> <%#exam3.ToString()%> </div> </div> <script language="javascript" type="text/javascript"> setClickTab("#paperTab", ".paperTabCnt") </script> </div> <div id="AdLayer1" class="Timer"> <strong>答题剩余时间</strong> <div id="timer"><%#paperInfo.Minutes %></div> <div><input type="button" onclick="finishExam()" value="交卷" /></div> </div> <script src="/include/js/float.js" type="text/javascript"></script> </form></body></html>