视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
在HTML中使用JS方法总结
2020-11-27 19:46:28 责编:小采
文档

这次给大家带来在HTML中使用JS方法总结,在HTML中使用JS的注意事项有哪些,下面就是实战案例,一起来看一下。

前言

JavaScript是浏览器的内置脚本语言。当网页中嵌入了JavaScript脚本,浏览器加载网页时,就会执行脚本,从而操作浏览器,实现各种动态效果

JavaScript代码嵌入网页的方法

1、<script>元素直接嵌入代码

<script type="text/javascript">
 function sayHello() {
 alert("hello!");
 }
</script>

2、<script>元素加载外部脚本

<script type="text/javascript" src="example.js"></script>

<script>标签相关属性

type属性

  • <script>标签默认就是JavaScript代码,嵌入javascript脚本时,type属性可以省略

  • 如果type属性的值,浏览器不认识,就不会执行其中的代码,所以可以在<script>标签中嵌入任意的文本内容,只要加上一个浏览器不认识的type属性就行,浏览器不会执行也不会显示它的内容,但是这个<script>节点依然存在于DOM之中,可以使用<script>节点的text属性读取它的内容

  • defer属性

    <script src="a.js" defer></script>
    <script src="b.js" defer></script>

    defer属性的运行流程:

    1. 浏览器开始解析HTML网页

    2. 解析过程中,发现带有defer属性的<script>元素

    3. 浏览器继续往下解析HTML网页,同时并行下载<script>元素加载的外部脚本

    4. 浏览器完成解析HTML网页,此时再回过头执行已经下载完成的脚本

    需要注意:

  • 异步加载资源

  • 按照顺序执行脚本

  • 使用defer加载的外部脚本不应该使用document.write方法

  • async属性

    <script src="a.js" async></script>
    <script src="b.js" async></script>

    async属性的运行流程:

    1. 浏览器开始解析HTML网页

    2. 解析过程中,发现带有async属性的<script>标签

    3. 浏览器继续往下解析HTML网页,同时并行下载<script>标签中的外部脚本

    4. 脚本下载完成,浏览器暂停解析HTML网页,开始执行下载的脚本

    5. 脚本执行完毕,浏览器恢复解析HTML网页

    需要注意:

  • 异步加载资源

  • 并不会按照顺序执行JS,谁先下载完,谁就先执行

  • 使用async加载的外部脚本不应该使用document.write方法

  • async和defer属性归纳

  • 都能解决“阻塞效应”

  • 都是异步加载资源,但执行顺序不一样

  • 如果脚本之间没有依赖关系,就使用async属性,如果脚本之间有依赖关系,就使用defer属性

  • 动态生成脚本

    ['a.js', 'b.js'].forEach(function(src) {
     var script = document.createElement('script');
     script.src = src;
     script.async = false;
     document.head.appendChild(script);
    });
  • 不会阻塞页面渲染

  • async设置为false可以保证b.js在a.js后面执行

  • 在这段代码后面加载的脚本文件,会等在b.ja执行完成后再执行

  • 相关知识点总结

    1. 包含在<script>标签内部的JavaScript代码,将被从上到下一次解析

    2. 无论以哪种方式嵌入代码,只要不存在defer和async属性,浏览器都会按照<Script>标签在页面中出现的先后顺序对它们进行解析

    3. 加载外部脚本的优点:可维护性、可缓存、适应未来

    4. <script>放在底部的原因1、避免“阻塞效应”。2、避免,在DOM结构生成之前调用DOM节点,而产生错误

    相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

    推荐阅读:

    怎样处理MySQL数据库拒绝访问

    怎样实现六边形按钮特效

    下载本文
    显示全文
    专题