html改变head位置,请问什么情况下script tag的位置可以是在HTML的head tag里面?

最近在学习前端。遇到一个常见的问题,就是在script tag在HTML中的位置应该放哪。

有一个例子, HTML markups是这样的

JS file是这样的

var loadTime = document.createElement('div');

loadTime.textContent = 'You loaded this page on: ' + new Date();

loadTime.style.color = 'blue';

document.body.appendChild(loadTime);

我一开始认为这个JS里面没有依赖任何目前HTML里的DOM元素,所以我放在HTML的任何位置效果都是一样的。但是运行之后发现,放在head里面是不行的,还得放在body closing tag之前。

这让我产生了一个疑问,如果这样的script都不能放在head里面的话,那什么样的script才能放在head里面?

另外我知道现在script tag有两个attribute async and defer 可以让浏览器在渲染HTML的时候,遇到了script不阻塞。而且http://caniuse.com/#feat=scri... 上面说也有94.59%的浏览器现在支持这个attr。但是我在网上看了一圈,从来没有看到有哪个网站用过这个attr。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值