现在要在页面里刷新两个地方,一个是系统时间,1分钟一更新第二个是当有短消息的时候,显示到页面上。下面是我的代码,,为什么我在页面上调用以后,时间和短消息提示在同一处都出现了????另外,各位老师有没有调用ajax的通用函数~~ 开发起来比较方便~~ 我用的是php4代码如下:
////////////////////////////////////////////////////////////////////////
////////////////// 开始时就调用函数 ////////////////////////////////////
////////////////////////////////////////////////////////////////////////function addLoadEvent(func){
var oldonload = window.onload;
if(typeof window.onload !='function'){
window.onload = func;
}else{
window.onload = function(){
oldonload();
func();
}
}
}////////////////////////////////////////////////////////////////////////
////////////////// 创建ajax函数 ////////////////////////////////////////
////////////////////////////////////////////////////////////////////////function createXMLHTTP()
{
var request;
var browser = navigator.appName;
//使用IE,则使用XMLHttp对象
if(browser == "Microsoft Internet Explorer")
{
var arrVersions = ["Microsoft.XMLHttp", "MSXML2.XMLHttp.4.0",
"MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp","MSXML2.XMLHttp.5.0"];
for (var i=0; i < arrVersions.length; i++)
{
try
{
//从中找到一个支持的版本并建立XMLHttp对象
request = new ActiveXObject(arrVersions[i]);
return request;
}
catch (exception)
{
//忽略,继续
}
}
}
else
{
//否则返回一个XMLHttpRequest对象
request = new XMLHttpRequest();
if(request.overrideMimeType)
{
request.overrideMimeType('text/xml');
}
return request;
}
}////////////////////////////////////////////////////////////////////////
/////////////////////////// main.php时间 ///////////////////////////////
//////////////////////////////////////////////////////////////////////////请求函数
function makeRequest_time()
{
var http_request_time = createXMLHTTP();
http_request_time.open('GET', "include/ajax.php?time=now", true);
http_request_time.onreadystatechange = processRequest_time; //禁止IE缓存
http_request_time.setRequestHeader("If-Modified-Since","0");
//发送数据
http_request_time.send(null);
//每1分钟刷新一次页面
setTimeout("makeRequest_time()", 1000*60);
}
//处理响应
function processRequest_time()
{
if(http_request_time.readyState == 4)
{
if(http_request_time.status == 0 || http_request_time.status == 200)
{
var result = http_request_time.responseText;
if(result=="")
{
result = "系统时间获取失败";
}
document.getElementById ("sysTimeShow").innerHTML=result;
}
//http_request_time.status != 200
else
{
alert("请求失败!");
}
}
}////////////////////////////////////////////////////////////////////////
/////////////////////////// main.php短消息 /////////////////////////////
//////////////////////////////////////////////////////////////////////////请求函数
function makeRequest_message()
{
var http_request_message = createXMLHTTP();
http_request_message.open('GET', "include/ajax.php?message=new", true);
http_request_message.onreadystatechange = processRequest_message; //禁止IE缓存
http_request_message.setRequestHeader("If-Modified-Since","0");
//发送数据
http_request_message.send(null);
//每1秒刷新一次页面
setTimeout("makeRequest_message()", 1000*1);
}
//处理响应
function processRequest_message()
{
if(http_request_message.readyState == 4)
{
if(http_request_message.status == 0 || http_request_message.status == 200)
{
var result_message = http_request_message.responseText;
if(result_message=="")
{
result_message = "读取失败";
}
document.getElementById("message").innerHTML=result_message;
}
else
{
alert("请求失败!");
}
}
}
header("Content-Type:text/html;charset=gb2312"); if($time='now')//当前时间
{echo date("H:i", time()) ;} if($message='new')//短消息
{
$db=initdb();
$count_message_new=$db->getcount("SELECT * FROM `message` where `touser`='$username' AND `new` = '1' " );
echo "($count_message_new)";
}addLoadEvent(makeRequest_time);
addLoadEvent(makeRequest_message);<span id="sysTimeShow"></span>
<span id="message"></span>
////////////////////////////////////////////////////////////////////////
////////////////// 开始时就调用函数 ////////////////////////////////////
////////////////////////////////////////////////////////////////////////function addLoadEvent(func){
var oldonload = window.onload;
if(typeof window.onload !='function'){
window.onload = func;
}else{
window.onload = function(){
oldonload();
func();
}
}
}////////////////////////////////////////////////////////////////////////
////////////////// 创建ajax函数 ////////////////////////////////////////
////////////////////////////////////////////////////////////////////////function createXMLHTTP()
{
var request;
var browser = navigator.appName;
//使用IE,则使用XMLHttp对象
if(browser == "Microsoft Internet Explorer")
{
var arrVersions = ["Microsoft.XMLHttp", "MSXML2.XMLHttp.4.0",
"MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp","MSXML2.XMLHttp.5.0"];
for (var i=0; i < arrVersions.length; i++)
{
try
{
//从中找到一个支持的版本并建立XMLHttp对象
request = new ActiveXObject(arrVersions[i]);
return request;
}
catch (exception)
{
//忽略,继续
}
}
}
else
{
//否则返回一个XMLHttpRequest对象
request = new XMLHttpRequest();
if(request.overrideMimeType)
{
request.overrideMimeType('text/xml');
}
return request;
}
}////////////////////////////////////////////////////////////////////////
/////////////////////////// main.php时间 ///////////////////////////////
//////////////////////////////////////////////////////////////////////////请求函数
function makeRequest_time()
{
var http_request_time = createXMLHTTP();
http_request_time.open('GET', "include/ajax.php?time=now", true);
http_request_time.onreadystatechange = processRequest_time; //禁止IE缓存
http_request_time.setRequestHeader("If-Modified-Since","0");
//发送数据
http_request_time.send(null);
//每1分钟刷新一次页面
setTimeout("makeRequest_time()", 1000*60);
}
//处理响应
function processRequest_time()
{
if(http_request_time.readyState == 4)
{
if(http_request_time.status == 0 || http_request_time.status == 200)
{
var result = http_request_time.responseText;
if(result=="")
{
result = "系统时间获取失败";
}
document.getElementById ("sysTimeShow").innerHTML=result;
}
//http_request_time.status != 200
else
{
alert("请求失败!");
}
}
}////////////////////////////////////////////////////////////////////////
/////////////////////////// main.php短消息 /////////////////////////////
//////////////////////////////////////////////////////////////////////////请求函数
function makeRequest_message()
{
var http_request_message = createXMLHTTP();
http_request_message.open('GET', "include/ajax.php?message=new", true);
http_request_message.onreadystatechange = processRequest_message; //禁止IE缓存
http_request_message.setRequestHeader("If-Modified-Since","0");
//发送数据
http_request_message.send(null);
//每1秒刷新一次页面
setTimeout("makeRequest_message()", 1000*1);
}
//处理响应
function processRequest_message()
{
if(http_request_message.readyState == 4)
{
if(http_request_message.status == 0 || http_request_message.status == 200)
{
var result_message = http_request_message.responseText;
if(result_message=="")
{
result_message = "读取失败";
}
document.getElementById("message").innerHTML=result_message;
}
else
{
alert("请求失败!");
}
}
}
header("Content-Type:text/html;charset=gb2312"); if($time='now')//当前时间
{echo date("H:i", time()) ;} if($message='new')//短消息
{
$db=initdb();
$count_message_new=$db->getcount("SELECT * FROM `message` where `touser`='$username' AND `new` = '1' " );
echo "($count_message_new)";
}addLoadEvent(makeRequest_time);
addLoadEvent(makeRequest_message);<span id="sysTimeShow"></span>
<span id="message"></span>
都是写在function外面的~~ 呵呵。写在里面就什么也不显示了???还想问一下,为什么呢???谢谢各位老师哈~~~
<span id="message"></span>在这两个地方显示但是现在是在两个地方都显示"07:49 0"同时显示了????? 这是为什么呢?谢谢楼上老师~~ 帮我看看哈~~~