因为页面是从上往下执行的,当执行到 var obtn=document.getElementById('btn1'); 时,页面里还没有btn1这个元素呢,就会出现报错的现象!倒是可以通过onload或者ready的方式,来让在head中的js在页面加载完成之后再执行!不过不推荐把javascript写在head中,这样会阻塞页面的加载,你的页面比较简单看不出来速度的影响,不过当js很多时就会能感觉到页面很慢了。建议写在</body>(body的闭合标签)后面或者</html>(html的闭合标签)的后面