Avatar ·

如何在不使用jQuery的情况下用纯JavaScript替换$(document).ready()?

大家好!我刚开始学习JavaScript,之前一直使用jQuery。在那里我习惯写这样的代码: ```javascript $(document).ready(function() { // 我的代码,在DOM加载后执行 console.log('页面已就绪!'); }); ``` 或者简写形式: ```javascript $(function() { // 代码 }); ``` 现在我想放弃jQuery,以减小页面体积并编写纯JavaScript。但我不知道如何在原生JS中正确实现`$(document).ready()`的替代方案。 问题在于,如果我只是在``或``开头编写脚本,它可能会在DOM树完全构建之前执行。例如,我尝试访问一个尚不存在的元素: ```javascript document.querySelector('.my-class').textContent = '你好!'; // 错误:元素为null ``` 如何在纯JavaScript中正确等待DOM完全加载?有几种方法可以实现?它们有什么区别? 我非常想写纯