关于setTimeout引用两次的理解及注意方法
@adu啊杜同学的回答没错。但是有一常见情况。大部分的脚本都是通过外部文件引入的,这种情况用setTimeout就完全没用了。原因: DOM加载顺序: 1.解析HTML结构。 2.加载外部脚本和样式表文件。 3.解析并执行脚本代码。 4.构造HTML DOM模型。 5.加载图片等外部文件。 6.页面加载完毕。 由此可见只要script没有加载完成(设置了defer和async属性的除外),DOM就不可能会加载。综上,要想避免脚本与文档的关联问题可用以下方法: 1.如果脚本引用位置在文档结构之上在脚本上设置defer(延迟)或者async(异步)属性; 2.将脚本引用位置置于文档结构以下引用。