gpt4 book ai didi

javascript - 简单的时钟不能正常工作

转载 作者:行者123 更新时间:2023-11-30 06:43:49 25 4
gpt4 key购买 nike

我是 Javascript 的初学者,我在编写这段代码时遇到了一些问题。它应该为我的网站创建一个数字时钟。

如果您想知道为什么 CPGS 在我的函数/变量名称中,那是因为它是我网站名称的缩写:)

另外,我没有从 FireBug 收到任何控制台错误,我的 JSLint 确认我的代码是有效的。

代码如下:

    (function() {
function CpgsClock() {
this.cpgsTime = new Date();
this.cpgsHour = this.cpgsTime.getHours();
this.cpgsMin = this.cpgsTime.getMinutes();
this.cpgsDay = this.cpgsTime.getDay();
this.cpgsPeriod = "";
}

CpgsClock.prototype.checker = function() {
if (this.cpgsHour === 0) {
this.cpgsPeriod = " AM";
this.cpgsHour = 12;
} else if (this.cpgsHour <= 11) {
this.cpgsPeriod = " AM";
} else if (this.cpgsHour === 12) {
this.cpgsPeriod = " PM";
} else if (this.cpgsHour <= 13) {
this.cpgsPeriod = " PM";
this.cpgsHour -= 12;
}
};

CpgsClock.prototype.setClock = function() {
document.getElementById('cpgstime').innerHTML = "" + this.cpgsHour + ":" + this.cpgsMin + this.cpgsPeriod + "";
};

var cpgsclock = new CpgsClock();
setInterval(function() {
cpgsclock.setClock();
cpgsclock.checker();
}, 1000);

})();

所以 setClock 方法工作正常。但是检查员不会做任何事情。如您所见,它会检查时间并相应地将其设置为上午和下午。它不适合我。

任何帮助都会很棒!

最佳答案

您没有在 setInterval 中更新时钟...

CpgsClock.prototype.update = function() {
this.cpgsTime = new Date();
this.cpgsHour = this.cpgsTime.getHours();
this.cpgsMin = this.cpgsTime.getMinutes();
this.cpgsDay = this.cpgsTime.getDay();
this.cpgsPeriod = "";
};

在你的 setInterval 中:

setInterval(function() {
cpgsclock.update();
cpgsclock.checker();
cpgsclock.setClock();
}, 1000);

jsFiddle:http://jsfiddle.net/qmSua/1/

关于javascript - 简单的时钟不能正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8585823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com