
这要看你的js代码的执行时机。如果外部js的引用语句是放在<head></head>内的,那么当它运行时,<body></body>内的代码尚未加载到内存,就无法获取到dom元素,length属性值自然就是0了。而直接放在html内的js代码是放在所有标签后面的,它运行时页面的整个dom结构已经加载完毕,这样再获取dom元素就没问题了。
你可以把外部js的代码放到window对象的onload事件中,就ok了:
这意思就是说,当window对象(及其下属所有子对象)都完全加载(load)到内存后,才开始执行指定的代码,这样就能保证程序正确运行了。
