清颖~ 2019-01-25 21:05 采纳率: 0%
浏览 914
已采纳

jQuery中为什么script脚本写在body前面时,其中的console.log输出是undefined?

jQuery中为什么script脚本写在body前面时,其中的console.log输出是undefined?
代码如下:

<script src="jquery-3.3.1.min.js"></script> 
    <script type="text/javascript">
            console.log($("#div1").html());
            console.log($("#div2").html());
            console.log($("#div2 span").html());
            console.log($("#input1").html());
            console.log($("#input2").html());
            console.log($("#button1").html());
    </script>
</head>
<body>
 <div id="div1">div有文本内容</div>
    <div id="div2">
        div2内的文本
        <span>span内有文本内容</span>
    </div>
    <input type="text" id="input1" value="这是一个input标签">
    <input type="text" name="" id="input2" placeholder="能成功获取">
    <button id="button1" value="这是一个button标签"></button>
</body>

控制台输出:图片说明
而脚本放在body下面就能正确输出。请问,为什么在body上面就是undefined啊<br> 已解决,写在$(function(){<br> })中即可。</p>

  • 写回答

4条回答

  • jixu8 2019-01-25 21:26
    关注

    当console.log代码执行时,body还没加载,所以找不到这个对象。一般放在body后面或者用window.onload事件包裹

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条