获取日期和时间服务器后,我将在服务器日期和时间上以1 秒为单位更新时间。
问题:
显示后浏览器会变慢。我认为需要1004 ms
增加1 second
. 它看起来很好,Chrome
但在IE8
.
我的方法:
var serverdate = null;
var elapsedSecond = null;
var startTime = "<%= getServerStartTime()%>";
window.onload=function(){
setServerDateAndTime();
};
function setServerDateAndTime() {
var currenttime= 'July 06, 2013 13:10:20';
serverdate = new Date(currenttime);
elapsedSecond = callAjax(startTime); //It Gets actual Elapsed Second
serverdate.setSeconds(serverdate.getSeconds() + parseInt(elapsedSecond, 10));
setInterval(displaytime, 1000);
}
function displaytime(){
serverdate.setSeconds(serverdate.getSeconds()+1);
var timestring = serverdate.getHours()+":"+serverdate.getMinutes()+":"+serverdate.getSeconds();
var date = serverdate.getFullYear() + ""+(serverdate.getMonth() + 1) +""+ serverdate.getDate();
document.getElementById("serverDateTime").innerHTML = date +" " + timestring;
}
function callAjax(value1) {
var result="";
var dataObj = {serverStartTime : value1};
$.ajax({
type : "POST",
url : '${pageContext.request.contextPath}/utility/frameredirect/elapsedTime.action',
dataType : 'text',
data : dataObj,
cache : false, // guarantees jsp is always called
async: false,
success: function(data) {
result = data;
}
});
return result;
}
我怎么解决这个问题?任何想法将不胜感激。