(前端学习笔记)01-html的执行顺序

01-html的执行顺序
刚开始学习html时,<head><body><title>等标签搞晕了我,有些执行顺序上的事情没有考虑到,导致代码已经修改结果还是无动于衷,例如:

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>执行顺序</title>
    <script type="text/javascript" >
        function a(){
            alert('a:hello,world!')
        }
        function a(){
            alert('b:hello,world!')
        }
        document.getElementById("btn").onclick=function a(){
            alert('c:hello,world!')
        }
    </script>
</head>
<body>
    <input type="button" value="按我有窗口跳转" id="btn" onclick="a()"/>
</body>

浏览器执行html结果是弹窗’c:hello,world’,后面的getElementById根本没有被执行。原因是html自上而下执行,当执行到getELementById时,由于还没有加载下方<body>的btn,所以他找不到这个元素,因此无法将alert的内容变成‘c:hello,world!',因此会跳过这行不执行。

<body>
    <input type="button" value="按我有窗口跳转" id="btn" onclick="a()"/>

    <script type="text/javascript" >
        function a(){
            alert('a:hello,world!')
        }
        function a(){
            alert('b:hello,world!')
        }
        document.getElementById("btn").onclick=function a(){
            alert('c:hello,world!')
        }
    </script>
</body>

btn已经加载完毕,后面的alert无论 修改了几遍,都能找到btn元素并且执行修改,因此,最后弹窗alert的语句是‘c:hello,world!'


小结:

  • html自上而下执行
  • getElementById若找不到指定id的元素,则会跳过不执行

参考:

html文件中script标签放在哪里?_Renaway的博客-CSDN博客_htmlscript写在哪

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值