使用DOMContentLoaded时,<script>与DOM交互代码包含在<head>节。如果没有内包装的DOMContentLoaded回调,该代码会抛出这样的错误无法读取null值
document.addEventListener('DOMContentLoaded', function(event) { // 代码与DOM交互 });
替代方案(适用于IE8)
// 替代DOMContentLoaded document.onreadystatechange = function() { if (document.readyState === "interactive") { // 在这里初始化你的DOM操作代码 } }