Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用户输入的Javascript倒计时_Javascript_Input - Fatal编程技术网

用户输入的Javascript倒计时

用户输入的Javascript倒计时,javascript,input,Javascript,Input,你好,我正在尝试制作一个简单的应用程序,它每1秒将数字从输入倒数到0。有人能解释一下我的代码有什么问题吗?我尝试了setTimeOut和倒计时功能的不同组合,但在最佳设置下,我的应用程序只能在一瞬间显示从输入(#number)到0的数字。我不知道为什么每次单击“开始”后,控制台都会被清除 倒计时: 设定时间 开始 window.onload=init; 函数init(){ var start=document.getElementById(“start”); start.onclick=fi

你好,我正在尝试制作一个简单的应用程序,它每1秒将数字从输入倒数到0。有人能解释一下我的代码有什么问题吗?我尝试了setTimeOut和倒计时功能的不同组合,但在最佳设置下,我的应用程序只能在一瞬间显示从输入(#number)到0的数字。我不知道为什么每次单击“开始”后,控制台都会被清除


倒计时:
设定时间
开始

window.onload=init; 函数init(){ var start=document.getElementById(“start”); start.onclick=finalCountDown; } 函数finalCountDown(){setTimeout(倒计时,1000);} 函数倒计时(){ 控制台日志(“工作”); var编号=document.getElementById(“编号”); var值=number.value; var区域=document.getElementById(“text1”); 对于(变量i=值;i>0;i--){ area.innerHTML+=i; } }
这里几乎没有问题

  • 您需要在按钮上设置属性type=“button”,否则它将尝试提交您的表单
  • 在setTimeout中,您引用了
    countDown
    函数,但从未调用它。您需要编写
    setTimeout(countDown(),1000);
  • window.onload=init;
    函数init(){
    var start=document.getElementById(“start”);
    start.onclick=finalCountDown;
    }
    函数finalCountDown(){setTimeout(countDown(),1000);}
    函数倒计时(){
    控制台日志(“工作”);
    var编号=document.getElementById(“编号”);
    var值=number.value;
    var区域=document.getElementById(“text1”);
    对于(变量i=值;i>0;i--){
    area.innerHTML+=i;
    }
    }
    
    倒计时:
    设定时间
    开始
    

    这里几乎没有问题

  • 您需要在按钮上设置属性type=“button”,否则它将尝试提交您的表单
  • 在setTimeout中,您引用了
    countDown
    函数,但从未调用它。您需要编写
    setTimeout(countDown(),1000);
  • window.onload=init;
    函数init(){
    var start=document.getElementById(“start”);
    start.onclick=finalCountDown;
    }
    函数finalCountDown(){setTimeout(countDown(),1000);}
    函数倒计时(){
    控制台日志(“工作”);
    var编号=document.getElementById(“编号”);
    var值=number.value;
    var区域=document.getElementById(“text1”);
    对于(变量i=值;i>0;i--){
    area.innerHTML+=i;
    }
    }
    
    倒计时:
    设定时间
    开始
    

    您遇到了什么错误?我想可能是因为concatenationtry area.innerHTML-=-Number(i)html仍然没有显示任何内容。控制台中没有错误。只是屏幕上没有显示任何内容。我昨天遇到了一个类似的错误。html只更改了一次吗?还有什么标记类型是areayes。没有上载数字。您遇到了什么错误?我想可能是因为concatenationtry area.innerHTML-=-Number(i)html仍然没有显示任何内容。控制台中没有错误。只是屏幕上没有显示任何内容。我昨天遇到了一个类似的错误。html只更改了一次吗?还有标记类型是什么?是的。没有上载数字。非常感谢!如果我可以再问一个问题-如果我想拥有所有数字(10->0),该怎么办一个接一个地写或写在列表中?不客气。当我回到电脑上时,我会将其添加到我的答案中。请接受答案。非常感谢!如果我可以再问一个问题-如果我想拥有所有数字(10->0)该怎么办一个接一个地写或写在一个列表中?不客气。我回到电脑前会把它添加到我的答案中。请接受答案。
    <body>
    
    
        <form>
            <h1>Countdown:</h1>
            <h3>Set time</h3>
            <input id="number" type="text">
            <button id="start">Start</button>
        </form>
        <div id="area"><p id="text1"></p></div>
    <script>
            window.onload = init;
            function init(){
                var start = document.getElementById("start");
                start.onclick = finalCountDown;
            }
    
             function finalCountDown() {setTimeout(countDown,1000);}
            function countDown(){
                console.log("works");
                var number = document.getElementById("number");
                var value = number.value;
                var area = document.getElementById("text1");
                for (var i = value; i>0;i--){
                area.innerHTML+=i;
                }
            }
    
        </script>
    </body>