网站建设

免费咨询电话:4008-615-676

当前位置:首页 > 网站建设 > 行业新闻

JS调用放到网站网页底部的原因

发布时间:2015-09-17    发布者:    标签:


浏览器加载页面是按从上到下顺序加载的。加载 JS 并执行的时候,会阻塞其他资源的加载。这是因为 JS 可能会有 DOM 、样式等等操作,所以浏览器要先加载这段 JS 并执行,再加载放在它后面的 HTML、CSS。


因此,加入一段巨大的 JS 放在最上面,浏览器首先要下载并执行,这段时间里面,页面是空白的。相比于加载了部分 HTML 和 样式 但是没有 JS 交互功能,显然是后者对于浏览者体验要好。


然而,是否所有 JS 都要放在最下面呢?并不是。


举实际的例子:


html5shiv是一段 JS 脚本,用来是早期 IE 兼容 HTML5 新增标签的支持。


这个 JS 脚本,必须要放在上面 head 部分,为什么呢?因为在老 IE 浏览器下面,不支持 <section> 这样的标签,所以用 JS 来兼容。如果放在底部,等 IE 浏览器先报错了,才会执行这块 JS 没多大用。


jQuery 这类的库,也是建议放在最上面的。首先最大的疑问可能是 jQuery 这么大,放在上面岂不是阻塞的很厉害?


不过 jQuery 通常引用的是 CDN 地址,而且经过 gzip 压缩之后并不是很大,而且引用公共 CDN 上面的 jQuery 话,很大几率早已被用户缓存下来了。所以可以不需要考虑阻塞产生的性能问题。


而我们都知道,JS 是按顺序执行下来的。也就是你没运行 jQuery 之前,先运行了调用 jQuery 函数的代码,就会报错。你可以控制你自己写的 JS 放在页面最下面,放在 jQuery 下面,但是你无法保证页面上其他地方会不会有人图省事直接在 HTML 代码里面输出 JS。如果有,那么就会报错。


所以我建议,类库放在上面加载,其余代码尽可能放在最底下加载。


<<上一篇:移动端的前端和pc端有何差异?下一篇:移动互联网业务的重要意义>>

底部logo

总机:028-85253286   业务咨询:13880585896   招聘热线:028-85351961   
地址:成都市人民南路四段成科西路三号省计算机应用研究中心B栋一楼

双软资质认证最佳电子服务商经营性网站备案信息电子商务协会常任理事单位成都电子商务诚信联盟会员成都电子商务协会会员公共信息安全网络监察

2002-2014 © 四川方法数码科技有限公司
成公网备字第[200600010]号
网络经济主体信息 蜀ICP备06005255号 川B2-20030050
川公网安备 51010702000025号