​不用计时器 直接调用怎么不行呢 不应该是可以的吗

来源:8-3 计时器setInterval()

慕斯156508

2018-06-06 10:29

不用计时器  直接调用怎么不行呢  不应该是可以的吗

https://img2.mukewang.com/5b1746e10001e1f906840313.jpg

写回答 关注

2回答

  • imooc客服
    2018-06-19 15:39:38
    <!DOCTYPE html><html><head><meta charset="UTF-8" /><title>Document</title><script>window.onload=function(){function showTime(){var time=new Date();var atime=time.getHours()+"时"+time.getMinutes()+"分"+time.getSeconds()+"秒";document.getElementById('txt1').value=atime;}//setInterval(showTime,1000);showTime();}</script></head><body>现在时间:<input type="text" id="txt1"/></body></html>

    以上是在你的代码上修改的,区别在于,在你原JS代码的外层加了window.onload=function(){}。它的作用是当整体页面内容加载完毕后,再来执行JS。

    浏览器在解析你的JS代码时,当它解析到document.getElementById("clock").value=attime;这句话时,它不知道”clock“是什么东西,因为此时页面还没有加载完,body中的”clock“还没有出现。所以就出了问题。

  • 阳火锅
    2018-06-07 15:51:19

    代码没问题,你要把整个<script>代码</script>这段写到</body>后面去。。就可以了。。希望采纳。。记住代码是由上到下执行,你写在上面根本取不到value值。。  或者你外层包一个window.onload = function(){所有代码}

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468665 学习 · 21895 问题

查看课程

相似问题