首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript间隔不重复

Javascript间隔不重复
EN

Stack Overflow用户
提问于 2014-06-01 09:03:53
回答 1查看 62关注 0票数 1

我的HTML/Javascript文档中有一个setInterval。现在,据我所知,setInterval部件的打印与我的另一个文档中的完全相同,而且它在那里工作得很好。但在这种情况下,间隔并不是每1秒重复一次。它只运行一次,然后停止。我错过了什么明显的错误吗?

代码语言:javascript
复制
<html>
<head>
<title>Time</title>
</head>
<body>

<p id="line-one" />
<p id="line-two" />
<p id="line-three" />
<p id="line-four" />
<p id="seconds" />    

<SCRIPT type='text/JavaScript'language='JavaScript'>

var now = new Date();
var hour = now.getHours();
var minute = now.getMinutes();
var second = now.getSeconds();
var nIntervId;

function counter()
{   
    if (typeof(nIntervId) != "undefined") {
        clearInterval(nIntervId);
    }

    nIntervId = setInterval(changeASCII, 1000);
}

function changeASCII()
{
    document.getElementById("seconds").innerHTML = second;
    switch(second) {
        case 00:
        document.getElementById("line-one").innerHTML = " ___...___ ";
        document.getElementById("line-two").innerHTML = "|...|.|...|";
        document.getElementById("line-three").innerHTML = "|.|.|.|.|.|";
        document.getElementById("line-four").innerHTML = "|___|.|___|";
        break;
        case 01:
        document.getElementById("line-one").innerHTML = " ___   ___";
        document.getElementById("line-two").innerHTML = "|   | |_  |";
        document.getElementById("line-three").innerHTML = "| | |  _| |_";
        document.getElementById("line-four").innerHTML = "|___| |_____|";
        break;
        default:
        document.getElementById("line-one").innerHTML = "Nothing";
        document.getElementById("line-two").innerHTML = "To";
        document.getElementById("line-three").innerHTML = "See";
        document.getElementById("line-four").innerHTML = "Here";
        break;
    }
}


window.onload = counter();

</SCRIPT>
</body>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-01 09:16:31

一切都很好,尽管没有更新秒的实际值,因此您从date获得了它,它也没有被更新。

在小提琴里看这个;

http://jsfiddle.net/H8C4W/

代码语言:javascript
复制
function changeASCII()
{
    now=new Date();
    second=now.getSeconds();
...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23978256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档