我正在创建一个使用图像和数字时钟的数字时钟。 javascript,但我想通过服务器时间那个时间......怎么做...我从服务器获取时间并将其传递给日期
我已经给了片段。
var time_str = document.clock_form.time_str.value ; //alert (time_str);
function dotime(){
theTime=setTimeout('dotime();',1000);
//d = new Date(Date.parse(time_str));
d= new Date(time_str);
hr= d.getHours()+100;
mn= d.getMinutes()+100;
se= d.getSeconds()+100; var time_str = document.clock_form.time_str.value ; //alert (time_str);
alert(' TIME ---> '+hr+' :: '+mn+' :: '+ se);
if(hr==100){
hr=112;am_pm='am';
}
else if(hr<112){
am_pm='am';
}
else if(hr==112){
am_pm='pm';
}
else if(hr>112){
am_pm='pm';hr=(hr-12);
}
tot=''+hr+mn+se;
document.hr1.src = '/flash_files/digits/dg'+tot.substring(1,2)+'.gif';
document.hr2.src = '/flash_files/digits/dg'+tot.substring(2,3)+'.gif';
document.mn1.src = '/flash_files/digits/dg'+tot.substring(4,5)+'.gif';
document.mn2.src = '/flash_files/digits/dg'+tot.substring(5,6)+'.gif';
document.se1.src = '/flash_files/digits/dg'+tot.substring(7,8)+'.gif';
document.se2.src = '/flash_files/digits/dg'+tot.substring(8,9)+'.gif';
document.ampm.src= '/flash_files/digits/dg'+am_pm+'.gif';
}
dotime();
但它不起作用
帮帮我
提前致谢。
答案 0 :(得分:1)
你从服务器传递的是什么?它是Unix时间戳还是格式化日期?
如果您正在传递Unix时间戳,那么在JavaScript中您将执行以下操作:
var date = new Date(timestamp * 1000);
你必须将它乘以1000,因为Unix时间戳表示从1970年1月1日00:00:00开始经过的秒的数量,而JavaScript Date
构造函数需要的数量为自1970年1月1日00:00:00以来毫秒。
如果您传递的是格式化日期字符串,则可以使用JavaScript解析它:
var date = Date.parse(formated_date);
日期应采用RFC 1123描述的格式。在PHP中可能是这样的:
<?php
$js_date = date(DATE_RFC1123);