我是靠谱客的博主 甜甜小蚂蚁,最近开发中收集的这篇文章主要介绍使用 Javascript 添加交互,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

概述

  • JavaScript 可以查询和修改 DOM 与 CSSOM
  • JavaScript 执行会阻止 CSSOM
  • 除非将 JavaScript 显式声明为异步,否则它会阻止构建 DOM

<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <link href="style.css" rel="stylesheet">
    <title>Critical Path: Script</title>
  </head>
  <body>
    <p>Hello <span>web performance</span> students!</p>
    <div><img src="awesome-photo.jpg"></div>
    <script>
      var span = document.getElementsByTagName('span')[0];
      span.textContent = 'interactive'; // change DOM text content
      span.style.display = 'inline';  // change CSSOM property
      // create a new element, style it, and append it to the DOM
      var loadTime = document.createElement('div');
      loadTime.textContent = 'You loaded this page on: ' + new Date();
      loadTime.style.color = 'blue';
      document.body.appendChild(loadTime);
    </script>
  </body>
</html>
  • JavaScript 允许我们进入 DOM 并拉取对隐藏的 span 节点的引用 - 该节点可能未出现在渲染树中,却仍然存在于 DOM 内。然后,在我们获得引用后,就可以更改其文本(通过 .textContent),甚至可以将其计算的 display 样式属性从“none”替换为“inline”。现在,我们的页面显示“Hello interactive students!”
  • JavaScript 还允许我们在 DOM 中创建、样式化、追加和移除新元素。从技术上讲,我们的整个页面可以是一个大的 JavaScript 文件,此文件能够逐一创建元素并对其进行样式化。尽管这种方法可行,但是在实践中,使用 HTML 和 CSS 要简单得多。在 JavaScript 函数的第二部分,我们会创建一个新的 div 元素,设置其文本内容,对其进行样式化,然后将其追加到正文中
  • 脚本在文档的何处插入,就在何处执行。当 HTML 解析器遇到一个 script 标记时,它会暂停构建 DOM,将控制权移交给 JavaScript 引擎;等 JavaScript 引擎运行完毕,浏览器会从中断的地方恢复 DOM 构建。
  • 执行我们的内联脚本会阻止 DOM 构建,也就延缓了首次渲染
  • 如果脚本执行的内容是修改尚未建立好的CSSOM,那么浏览器将延迟脚本执行和 DOM 构建,直至其完成 CSSOM 的下载和构建
  • JavaScript 在 DOM、CSSOM 和 JavaScript 执行之间引入了大量新的依赖关系,从而可能导致浏览器在处理以及在屏幕上渲染网页时出现大幅延迟
    在这里插入图片描述
  • “优化关键渲染路径”在很大程度上是指了解和优化 HTML、CSS 和 JavaScript 之间的依赖关系谱

解析器阻止和异步Javascript

  • 内联脚本始终会阻止解析器,除非您编写额外代码来推迟它们的执行
  • 通过script标签引入的脚本,如果是外部 JavaScript 文件,浏览器必须停下来,等待从磁盘、缓存或远程服务器获取脚本,这就可能给关键渲染路径增加数十至数千毫秒的延迟
  • 了解 async 和 await

最后

以上就是甜甜小蚂蚁为你收集整理的使用 Javascript 添加交互的全部内容,希望文章能够帮你解决使用 Javascript 添加交互所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部