<!doctupe html><html><head> <meta charset="utf-8" /> <title>Dom练习</title> <style type="text/css"> body{font-size:12px;} #txt{ height:400px; width:600px; border:#333 solid 1px; padding:5px; } p{ line-height:18px; text-indent:2em; } </style> <script type="text/javascript"> var mychar=document.getElementById("txt"); function changeC(){ mychar.style.color="red"; mychar.style.backgroundColor="gray"; } function changeW(){ mychar.style.width="800px"; mychar.style.height="600px"; } function hiddenC(){ mychar.style.display="none" } function displayC(){ mychar.style.display="block"; } function cancelS(){ var res=confirm("取消设置?") if(res){ mychar.style.color="#000"; mychar.style.backgroundColor="#fff"; mychar.style.width="600px"; mychar.style.height="400px"; mychar.style.display="block"; } } </script></head><body> <h2 id="con">JavaScript课程</h2> <div id="txt"> <h5>JavaScript为网页添加动态效果并实现与用户交互的功能</h5> <p>1.JavaScript入门篇,让不懂JS的你快速了解JS</p> <p>2.JavaScript进阶篇,让你掌握JS的基础语法、函数、数组、事件、内置对象、BOM浏览器、DOM操作。</p> <p>3.学习以上两门基础课后,在深入学习JavaScript的变量作用域、事件、对象、运动、cookie、正则表达式、ajax等课程。</p> </div> <!--<script type="text/javascript"> var mychar=document.getElementById("txt"); function changeC(){ mychar.style.color="red"; mychar.style.backgroundColor="gray"; } function changeW(){ mychar.style.width="800px"; mychar.style.height="600px"; } function hiddenC(){ mychar.style.display="none" } function displayC(){ mychar.style.display="block"; } function cancelS(){ var res=confirm("取消设置?") if(res){ mychar.style.color="#000"; mychar.style.backgroundColor="#fff"; mychar.style.width="600px"; mychar.style.height="400px"; mychar.style.display="block"; } } </script>--> <form> <input type="button" value="改变颜色" onClick="changeC()" /> <input type="button" value="改变宽高" onClick="changeW()" /> <input type="button" value="隐藏内容" onClick="hiddenC()" /> <input type="button" value="显示内容" onClick="displayC()" /> <input type="button" value="取消设置" onClick="cancelS()" /> </form></body></html>
2 回答
已采纳
李晓健
TA贡献1036条经验 获得超461个赞
因为 var mychar=document.getElementById("txt"); 当执行到这行代码时,页面的body部分还没有生成,也就是说页面还没有<div id="txt"> 这个div,mychar就是undefined,所以代码就会报错。
当你把script代码放到 div后面的时候 ,就会先生成这个div,后执行script代码,这时var mychar=document.getElementById("txt"); 就能够正确获取到这个div,后面的代码就都运行正常。
添加回答
举报
0/150
提交
取消