關(guān)于document.getElementById("clock").value = time
下段代碼不能使文本框顯示出當(dāng)前電腦時間,報(bào)錯Cannot set property 'value' of null。為什么像課程例子那樣調(diào)用函數(shù)(把setInterval換成setTimeout)就沒問題?(大概意思是都把js寫在前面,為何一個會報(bào)錯,一個不會)
<head>
<script type="text/javascript">
? ? var time=new Date(); ? ? ? ? ? ? ? ?
? ? document.getElementById("clock").value = time;
</script>
</head>
<body>
? <form>
? ? <input type="text" id="clock" size="50" ?/>
? </form>
</body>
2018-04-25
setInterval會先調(diào)用一次函數(shù)吧,調(diào)用函數(shù)的時候,body中input元素還沒加載到,所以Cannot set property 'value' of null不能為一個不存在的元素賦值, ?setTimeout是停一段時間以后才會調(diào)用函數(shù),此時input元素已經(jīng)存在. ?我覺得是這樣的?
2018-04-25
這么厲害的代碼,我還沒看懂,讓我好好明白一下意思先,一會回來告訴你。