为了账号安全,请及时绑定邮箱和手机立即绑定

我这段代码要加点什么才能实现点击按钮出现动态时间的效果

我这段代码要加点什么才能实现点击按钮出现动态时间的效果

哈哈哈蜜瓜 2016-09-20 11:31:36
html文件:<p id="clock"></p><input type="button" value="dianji" onclick="count()">js文件:function count(){    var time=new Date();    var attime= time.getHours()+"."+time.getMinutes()+"."+time.getSeconds() ;    document.getElementById("clock").innerHTML=attime;}var attime = setInterval(count(),100);
查看完整描述

1 回答

已采纳
?
stone310

TA贡献361条经验 获得超191个赞

<body>
<p id="clock"></p>
<input type="button" value="dianji" onclick="a()">
<script >
    function count(){
        var time=new Date();
        var attime= time.getHours()+"."+time.getMinutes()+"."+time.getSeconds() ;
        document.getElementById("clock").innerHTML=attime;
    }
    function a(){
   setInterval(count,100);
    }
</script>
</body>

或者

<body>
<p id="clock"></p>
<input type="button" value="dianji" onclick="count()">
<script >
    function count(){
        var time=new Date();
        var attime= time.getHours()+"."+time.getMinutes()+"."+time.getSeconds() ;
        document.getElementById("clock").innerHTML=attime;
        setTimeout(count,100)
    }
</script>
</body>


查看完整回答
1 反对 回复 2016-09-20
  • 哈哈哈蜜瓜
    哈哈哈蜜瓜
    为什么第一个用setInterval要重新执行一个function而第二个用setTimeout放在第一个function就行?
  • stone310
    stone310
    如果setInterval放到count函数那么计时器就会不断叠加,最后越来越快; 如果不放进函数里面,当页面加载的时候setInterval()会自己执行,不用点击时间就会出现,就没有点击按钮才出现时间的效果了; 所以将它放到一个函数a内部可以保证页面加载不执行,点击按钮后才执行; 第二个setTimeout它为什么不能另起一个函数,是因为它只执行一次,本身并没有循环效果,如果另起一个函数,点击只会执行一次,但放到count函数内部调用它本身,就可以实现循环效果;
  • 哈哈哈蜜瓜
    哈哈哈蜜瓜
    setInterval(count(),100)是执行整个count()函数点击按钮才能出现时间,那为什么setInterval(count,100)可以自动执行
点击展开后面4
  • 1 回答
  • 0 关注
  • 989 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信