首页>>SEO问题
无论是参考书还是大牛,都会曾经告诉我们"JS最好能放在html文件的底部,</body> 标签之前,如此可以让浏览器更好的加载页面",当然实际情况我们还需要分情况实际分析对待,比如有些JS就必须要在<head>里加载,否则会报错而且失效;又或者是JS的引用在</body>之前和</body>之后有什么区别?这里实际测试过,没有任何区别,当JS写在</body>之后的时候,浏览器会自动忽略</body>结束标签,故此这个问题无需太过较真。
通常情况下,js代码的放置位置有两种,标签内(内联),标签外(外联)。 那么,把js代码放在这两个不同位置,到底会有什么差别呢?正常情况下我们优先使用外联样式,主要是为了可维护性以及可缓存性。拓展阅读:网站搜索优化操作中JS压缩的流程问题的讨论
首先我们需要了解到,HTML 文档是由浏览器从上到下依次载入的。页面的加载顺序如下:
解析HTML结构。
加载外部脚本和样式表文件。
解析并执行脚本代码。
构造HTML DOM模型。
加载图片等外部文件。
页面加载完毕。
外联样式调用JavaScript的好处是什么?
将 JavaScript 代码(不包括<script></script>标签)单独形成一个文档,并以 js 后缀命名,如 myscript.js ,并在 HTML 文档 <script></script> 标签中使用 src 属性来引用该文件:
<html>
<head>
<script type="text/javascript" src="myscript.js"></script>
</head>
在使用了外部引用 JavaScript 代码之后,其好处显而易见:
1.避免在 JavaScript 代码里使用 <!-- ... //-->
2.避免使用难看的 CDATA
3.公共的 JavaScript 代码可以被复用于其他 HTML 文档,也利于 JavaScript 代码的统一维护
4.HTML 文档更小,利于搜索引擎收录
5.可以压缩、加密单个 JavaScript 文件
6.浏览器可以缓存 JavaScript 文件,减少宽带使用(当多个页面同时使用一个 JavaScript 文件的时候,通常只需下载一次)
7.避免使用复杂的 HTML 实体,如可以直接使用 document.write(2>1) 而无需写作 document.write(2<1)
将 JavaScript 代码形成为外部文件,也会增加服务器的 HTTP 请求负担,在超高并发请求的环境下,这并不是一个好的策略。另外 在引用外部 js 文件时,需注意文件的正确路径。
如果把js代码放在标签之间,可以确保在需要使用脚本之前,它已经被载入了。但是当我们有一段js代码要操作HTML元素时,就会因为html元素还未载入界面(对象不存在)而出错。也就是DOM树还未开始构造,我们就试图操作DOM对象。
当然,通常情况下,我们操作页面元素一般都是通过事件来驱动的。即当我们使用“ window.load = start(); ”时,strat()函数内的js代码只会在页面载入完成后执行。所以上面这种情况并不多见。
可是这样好像还是没有回答为什么能使浏览器更快地加载页面。
一般来说,根据http规范,浏览器每次从同一个域名中最多只能同时下载两个文件。而在下载脚本期间,浏览器不会下载其他任何文件,即使是来自不同域名的文件也不会下载,所有其他资源都要等到脚本加载完毕后才能下载。”
经过百度发现,这被叫作浏览器并发请求数,而这个限制已经是IE6时代的了。显然,这不应该是主要原因。
前面提到浏览器加载HTML文档是从上到下,而在渲染的过程中,页面的下载和渲染都必须停下来等待脚本执行完成。JavaScript 执行过程耗时越久,浏览器等待响应用户输入的时间就越长。
我的理解是,浏览器更快地加载页面,意味着浏览器更快地让用户能进行基本的操作。
如果把javascript代码放得很早,但是代码加载缓慢或者加载失败(外链加载很可能出现这种情况),这时网页会在这一步卡很久很久,而用户也会在网页上看到一大段空白。显然,体验是极其不友好的。当我们把javascript代码放于底部时,至少能先让网页的内容先展示出来。
我们都知道,JS 是按顺序执行下来的。也就是你没运行 jQuery 之前,先运行了调用 jQuery 函数的代码,就会报错。你可以控制你自己写的 JS 放在页面最下面,放在 jQuery 下面,但是你无法保证页面上其他地方会不会有人图省事直接在 HTML 代码里面输出 JS。如果有,那么就会报错。
所以我建议,类库放在上面加载,其余代码尽可能放在最底下加载。一句话就是:请求HTML,然后顺带将HTML依赖的JS/CSS/iconfont等其他资源一并请求过来。 那么优化网页的加载速度,最本质的方式就是:减少请求数量与请求大小。
======= 然而,前端性能优化说起来好像很复杂,实际上对于整个页面的加载来讲只是冰山一角。
最大的困难是,web前端优化一顿操作猛如虎,还不如上个 CDN 或者加个宽带或者优化一个后端算法来的效果好的多。
- 上一篇: 关于“窃取用户隐私行为”的算法升级公告
- 下一篇: 网站SEO:怎样减少无效链接的爬行和索引?
猜你喜欢
- 2024-09-25 大搜不否词转化效果更好?
- 2024-02-23 提高小红书运营效率的6个工具
- 2022-11-10 【官方文档】百度搜索网站被黑防范指南
- 2022-11-03 【干货必备】百度搜索优质内容指南
- 2022-08-01 百度隐藏“快照”功能:原因未知-百度快照没了?
- 2022-06-20 浅析“百度搜索基础信息设置规范”!
- 搜索
-
- 2024-10-23 15条素材秘诀,灭了你的同行!
- 2024-09-25 大搜不否词转化效果更好?
- 2024-09-21 5大自媒体平台区别
- 2024-09-20 135个投放必备网站,收藏就对了!!
- 2024-09-09 怀念19年前的投放环境吗?
- 2024-09-05 2万字,收下这份千川投放宝典!
- 2024-08-29 做小红书,远离这10大误区!
- 2024-08-27 AI不会取代优化师,但市场会!
- 2024-08-21 抖音现状:第一名吃肉,第二名喝汤,第三名···
- 2024-08-20 小红书算法,3招破解!
- 2024-08-15 小红书笔记「高危词」汇总
- 2024-08-10 PbootCMS使用MySQL数据库配置···
- 2019-11-01 Origin DNS error:使用百···
- 2020-06-20 “401 - 未授权: 由于凭据无效,访···
- 2020-12-01 一级域名好还是二级域名好?
- 2020-10-13 百度抓取诊断工具一直抓取失败怎么办?
- 2019-12-09 域名解析后,网站返回状态码511应对方法
- 2020-04-10 百度下拉框怎么刷?刷百度下拉框软件原理及···
- 2024-04-07 小红书+抖音+直播常见违禁词及替换方法
- 2021-04-13 html/txt文件中文用浏览器打开有乱···
- 2019-08-12 网站出现“403,服务器上文件或目录拒绝···
- 2021-01-06 百度移动端的搜索结果上线“踩顶”功能,对···
- 2020-10-20 UC神马搜索怎么做快速排名优化
- 2019-11-06 正确打开.db数据库文件的两种方式,避免···
- 2023-07-12 落地页做好这5点优化,线索量翻倍!
- 2020-08-17 网站改版升级而造成网站降权的问题
- 2021-09-18 SEO为什么没办法快速见效,听听专家怎么···
- 2020-01-06 你不要过来啊!死链接是怎么产生的?
- 2019-09-26 新网站流量超出,网站关闭了怎么办?对SE···
- 2020-05-14 网站被k,收录归零消失,是怎么回事以及怎···
- 2020-04-24 大企业seo为什么不外包?
- 2019-10-10 web移动端优化选m.二级域名还是响应式···
- 2019-03-21 为什么百度搜索资源平台https认证无法···
- 2020-01-11 强制弹出qq等对话框广告:SEO角度分析
- 2020-07-12 seo方案计划书不会写?这里告诉你思路!
- 2020-10-28 关键词长时间不出排名我们应该如何应对?
- 热门标签
-
- 百家号
- 百度账号注销
- 百家号解绑
- 快排
- 黑帽SEO
- seo外包价格
- seo报价
- seo费用
- 谷歌
- 搜索引擎
- 网站收录
- 百度惩罚
- 首页收录
- IIS
- url去除后缀
- 网站设置默认首页
- .htaccess
- ECS服务器
- 服务器和SEO
- JavaScript
- html加载
- 访问速度
- 锚文本
- 百度收录
- 索引量和收录量
- seo工资
- 创业
- seo细节
- 优化的忌讳
- 网站标题
- title tag
- 网站优化
- 修改标题
- 关键词
- 流量关键词
- 关键词排名
- SEO问题
- 排名恢复
- 按天计费
- url
- site出图
- 老域名
- 弹窗广告
- qq强制客服
- 图片seo
- 百度快照
- iframe
- canonical标签
- 隐藏页面(cloaking)
- 无效链接
- 快照劫持
- 网站安全
- seo文章
- Adodb打开数据库连接失败
- 企业seo
- 官网优化
- seo外包
- seo专员
- 优化招聘
- 百度爱采购
- seo写作
- seo编辑
- https认证
- 搜索资源平台
- https协议
- 网站降权
- 降权恢复
- 网站日志
- 日志分析
- 内页排名
- h标签
- 企业站建设
- 网站SEO
- SEO价值
- 精致seo
- seo咨询
- 转化率
- 百度算法升级
- 外链
- 百度算法
- 排名波动
- 关键词下降
- 降权
- 网站质量度
- seo学习
- seo思维
- 新站seo
- 新站优化
- seo策略
- 过时的优化