javascript - 关于js创建元素问题。

查看:106
本文介绍了javascript - 关于js创建元素问题。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

<script>
arr=["ninhao","dajiahao","hi"];
var ol=document.querySelector("#ol");
//alert(123)
for( var i=0; i<arr.length; i++){
    var oli=document.createElement("li");
        oli.innerHTML=arr[i];
        ol.appendChild(oli);
    }

</script>
<ol id="ol">

</ol>

我想把数组arr的值都出来放到有序列表中,但是一直提示不能读取appendChild,请问是什么原因呢,谢谢!

解决方案

浏览器就会按顺序先运行<script>中的js脚本,然后读取<ol>内容渲染页面,也就是说js执行的时候页面上还不存在ol元素。解决办法是把<script>放在<ol>后面,或者使用window.onload

<script>
window.onload = function() {
    arr=["ninhao","dajiahao","hi"];
    var ol=document.querySelector("#ol");
    //alert(123)
    for( var i=0; i<arr.length; i++){
        var oli=document.createElement("li");
            oli.innerHTML=arr[i];
            ol.appendChild(oli);
    }
}
</script>
<ol id="ol">
</ol>

这篇关于javascript - 关于js创建元素问题。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆