Uncaught TypeError: Cannot set properties of null (setting 'innerHTML')的原因和处理

itlife365.com_begin
Uncaught TypeError: Cannot set properties of null (setting 'innerHTML')的原因和处理
Cannot-set-properties-of-null-innerHTML
再使用self.setInterval写js代码的时候都遇到过这样的问题,网上百度了一下。
 Cannot set properties of null (setting 'innerHTML'),这个报错的意思是无法读取null的属性“innerHTML”,即表示找不到你想要将所写的HTML代码插入的地方。
原因:浏览器加载HTML文档时,会将HTML文档解析为一个树形结构,称为DOM树,代码的执行顺序是自上而下依次执行,当执行到innerHTML这一行代码时,他并没有加载到下面的DOM结构,就会报错无法读取HTML。
观察了一下代码确实这样
解决办法:将DOM的读取部分的script放在body后面。或者在script标签中添加window.onload,等页面加载结束后再执行这一部分代码。
解决:将 self.setInterval(showTime, 1000);这一行代码放到body之后:
<body>
    <div id="time"> </div>
</body>
<script>
    setInterval(showTime, 1000);
</script>
</html>
或在原本的script标签中添加window.onload
<script>
        window.onload = function () {
            setInterval(showTime, 1000);
        }
</script>
Cannot-set-properties-of-null-innerHTML
itlife365.com_end

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年11月    »
123
45678910
11121314151617
18192021222324
252627282930
搜索
标签列表
网站分类
最新留言
    文章归档
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.闽ICP备11018667号-2