Firefox 下AJAX运行不正常 求高人帮忙修改(解决立马结贴)
请分别用IE浏览器跟Firefox浏览器打开下面的地址
http://www.itzhiling.com/au/opt.htm
你就可以看到效果:该地址在Firefox下面打开后 AJAX查询不会因为有有提示窗口而停止
下面是代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="ajax.js"></script>
<title>Auditing</title>
<style>
*{
font-size:16px;
}
#au{
position: absolute; width:10px; height:10px; z-index:5;
left:0px;top:0px;
display:none;
border:#3399ff 3px solid;
background-image:url('blog_line.gif');
}
</style>
</head>
<body>
操作员页面
<div id="tip"></div>
<script>
//查询间隔时间(秒)
var counter=20;
var showed=false;
getContent('st.htm');
//
window.setInterval("query()",1000);
function query(){
if(showed) return ;
counter--;
document.getElementById("tip").innerHTML="Ajax查询将于"+counter+"秒后发出...";
if(counter<=0){
getContent('st.htm');
window.setTimeout("showMsg()",600);
counter=20;
document.getElementById("tip").innerHTML="Ajax查询已经发送!";
}
}
function showMsg(){
if((str!="") && confirm("有新用户 "+str+" 注册,现在立即审核吗?")){
showed=true;
var obj=document.getElementById("au");
obj.style.display="inline";
obj.style.left="0px";
obj.style.width=document.body.offsetWidth-30;
obj.style.height=document.body.offsetHeight-30;
document.getElementById("au2").src="au.aspx";
}
}
function hideDiv(nID){
document.getElementById("au").style.display="none";
showed=false;
getContent('st.htm');
}
</script>
<div id="au" ><a href="javascript:hideDiv('au')">关闭审核页面</a>
<iframe name="au2" id="au2" width="100%" height="100%" marginwidth="1" marginheight="1" border="0" frameborder="0"></iframe>
</div>
</body>
</html>
ajax.js
var xmlhttp=initxmlhttp();
var str;
function initxmlhttp( )
{
var xmlhttp_request = false;
try
{
if (window.ActiveXObject)
{
for (var i = 5; i; i--)
{
try
{
if (i == 2)
{
xmlhttp_request = new ActiveXObject("Microsoft.XMLHTTP");
}
else
{
xmlhttp_request = new ActiveXObject("Msxml2.XMLHTTP." + i + ".0");
xmlhttp_request.setRequestHeader("Content-Type", "text/xml");
xmlhttp_request.setRequestHeader("Content-Type","gb2312");
}
break;
}
catch (e)
{
alert("catch")
xmlhttp_request = false;
}
}
}
else if (window.XMLHttpRequest)
{
xmlhttp_request = new XMLHttpRequest();
if (xmlhttp_request.overrideMimeType)
{
xmlhttp_request.overrideMimeType('text/xml');
}
}
}
catch (e)
{
xmlhttp_request = false;
}
return xmlhttp_request;
}
function getContent(url){
url=url+"?"+new Date();
//alert(url);
//document.getElementById(div_ID).innerHTML="发送查询请求...";
xmlhttp.open("GET",url,true);
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4){
//alert(xmlhttp.responseText);
str=xmlhttp.responseText;
//document.getElementById(div_ID).innerHTML="查询完成!";
return xmlhttp.responseText;
}else{
return "0";
}
}
xmlhttp.send(null);
}