Javascript getTime JS代码工作不正常
我试图做的是显示一个默认字符串,当到达某个时间时,它必须更新该字符串。字符串将在后面有css的h1中更新 这是我的代码:Javascript getTime JS代码工作不正常,javascript,Javascript,我试图做的是显示一个默认字符串,当到达某个时间时,它必须更新该字符串。字符串将在后面有css的h1中更新 这是我的代码: <h1 id="header" class="loginhead" ></h1> <script> //pu8t in onload document.onload = setDateChange(); function setDateChange(){
<h1 id="header" class="loginhead" ></h1>
<script>
//pu8t in onload
document.onload = setDateChange();
function setDateChange(){
// datestring format yyyy-mm-dd hh:mm:ss
String output ="Welcome to the All-Stars Summit Registration Site, Canada";
if (Date().getTime() > Date("2015-07-15 23:59:00").getTime())
{
output ="The All-Stars Summit Registration Site, Canada, is now closed";
}
document.getElementById('header').innerHTML = output; //change the html/text inside of the span with the id closed'.
}
setDateChange();
//figure out which date is next
//*********************
var timeTillNextDate = Date("2015-07-15 23:59:00").getTime();
var timeTillRun = Date("2015-07-15 23:59:00").getTime() - Date().getTime();
if(timeTillRun > 0){
setTimeout(setDateChange()), timeTillNextDate); //will wait to call changeHeader function until timeTillChange milliseconds have occured.
}
</script>
//pu8t空载
document.onload=setDateChange();
函数setDateChange(){
//日期字符串格式yyyy mm dd hh:mm:ss
String output=“欢迎来到全明星峰会注册网站,加拿大”;
如果(Date().getTime()>Date(“2015-07-15 23:59:00”).getTime())
{
output=“加拿大全明星峰会注册网站现已关闭”;
}
document.getElementById('header')。innerHTML=output;//在id关闭的情况下更改范围内的html/文本。
}
setDateChange();
//找出下一个日期
//*********************
var timeTillNextDate=Date(“2015-07-15 23:59:00”).getTime();
var timeTillRun=Date(“2015-07-15 23:59:00”).getTime()-Date().getTime();
如果(timeTillRun>0){
setTimeout(setDateChange()),timeTillNextDate);//将等待调用changeHeader函数,直到发生timeTillChange毫秒。
}
JsFiddle链接在这里:能否请您将所有的
Date()
替换为:
(new Date())
因为大多数函数都在对象上工作,而不是在类上工作。例如:
var timeTillNextDate = (new Date("2015-07-15 23:59:00")).getTime();
var timeTillRun = (new Date("2015-07-15 23:59:00")).getTime() - (new Date()).getTime();
按照@PraveenKumar的建议,将Date()
替换为(新日期())
除此之外,这里还有一个语法错误
String output=“欢迎来到加拿大全明星峰会注册网站”代码>
应该是,
var output=“欢迎来到加拿大全明星峰会注册网站”代码>
检查
而且setTimeout(setDateChange(),timeTillNextDate)
应该是setTimeout(setDateChange,timeTillNextDate)
最终的js代码看起来像
document.onload = setDateChange();
function setDateChange(){
// datestring format yyyy-mm-dd hh:mm:ss
var output ="Welcome to the All-Stars Summit Registration Site, Canada";
if (new Date().getTime() > (new Date("2015-07-15 23:59:00").getTime()))
{
output ="The All-Stars Summit Registration Site, Canada, is now closed";
}
document.getElementById('header').innerHTML = output; //change the html/text inside of the span with the id closed'.
}
setDateChange();
//figure out which date is next
//*********************
var timeTillNextDate = (new Date("2015-07-15 23:59:00")).getTime();
var timeTillRun = (new Date("2015-07-15 23:59:00")).getTime() - (new Date()).getTime();
if(timeTillRun > 0){
setTimeout(setDateChange, timeTillNextDate); //have occured.
}
您需要做一些修改来修复错误
将Date()
更改为new Date()
去掉多余的括号。修改
setTimeout(setDateChange()),timeTillNextDate)代码>
至
setTimeout(setDateChange(),timeTillNextDate)代码>
String
不是JS中的数据类型。因此,将其更改为var
字符串输出
到变量输出