javascript放在head和body的区别

今天在公司做了开发,使用javascript中常见的选择器queryselector进行dom组件的选择,发现迟迟没有效果,在此记录之,主要是<script>位置存放的问题。

上谷老师查了下,网上大致对javascript放在head和body的区别解释如下:

1.当JavaScript要在页面加载过程中动态建立一些Web页面的内容时,应将JavaScript放在body中。 
2.定义为函数并用于页面事件的JavaScript应当放在head标记中,因为它会在body之前加载。

可是,对于我的这个项目来说,主要是监听button的事件。项目模拟如下:

<body>
<button class="btn">button</button>

<script type="text/javascript">
    var btn=document.querySelector("body .btn");
    btn.onclick = function(){alert('click button');};
</script>  
</body>
为了监听button里面的事件,使用querySelector进行选择,找到需要监听的button,再使用onclick函数,触发事件。

但是,如果将script放到head里面,就会出错,不知道什么原因,不知道谁能够解答,万分感谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值