对于我的个人网站,我想在我的网站中插入一个简单的ajax服务器时钟,但由于某种原因,它没有显示在标题中。这是Javascript代码
var httpxml;
try {
// Firefox, Opera 8.0+, Safari
httpxml=new XMLHttpRequest();
} catch (e) {
// Internet Explorer
try {
httpxml=new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
httpxml=new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("ur browser doesn't support ajax m8, try reinstalling windows 95");
return false;
}
}
}
function stateck() {
if(httpxml.readyState==4) {
document.getElementById("time").innerHTML=httpxml.responseText;
}
}
var url="ajax-server-clock-demock.php";
url=url+"?sid="+Math.random();
httpxml.onreadystatechange=stateck;
httpxml.open("GET",url,true);
httpxml.send(null);
tt=timer_function();
}
function timer_function(){
var refresh=1000; // Refresh rate in milli seconds
mytime=setTimeout('AjaxFunction();',refresh)
}
在php文件中
<?Php
echo date("d/m/y : H:i:s", time());
?>
最后在标题
中<time>bacon</time>
答案 0 :(得分:2)
我必须在上下文中看到更多代码,因为有些东西会导致这种情况无效,与此同时,您的脚本会出现多个问题:
你做了setTimeout()。这只会执行一次,假设您希望时钟每秒都需要更新一次:
http://www.w3schools.com/jsref/met_win_setinterval.asp
哦,你也需要做一些事情:
document.getElementsByTagName('time')[0];
而不是getElementById()
或者为你的元素添加一个id,如:
<time id="mytime"></time>
然后你可以打电话:
document.getElementById('mytime');
得到了吗?
而且,声明这个AjaxFunction()在哪里调用setTimeout?
此外,还有更好的方法可以做一个时钟......你应该考虑使用jQuery或类似的东西,在做AJAX,DOM操作等时会让你的生活更轻松......