Node.js 的本来用途是编写高性能的 Web 服务器,本章介绍了使用 Node.js 操作网络时需要的 API 以及一些坑的回避技巧。
资源事件:beforeunload 事件、unload 事件、load 事件、error 事件。session 历史事件:pageshow 事件、pagehide 事件、popstate 事件、hashchange 事件。网页状态事件:DOMContentLoaded 事件、readystatechange 事件。窗口事件:scroll 事件、resize 事件、fullscreenchange 事件、fullscreenerror 事件。剪贴板事件、焦点事件、CustomEvent 接口。
<video> 元素用来加载视频,是 HTMLVideoElement 对象的实例。<audio> 元素用来加载音频,是 HTMLAudioElement 对象的实例。而 HTMLVideoElement 和 HTMLAudioElement 都继承了 HTMLMediaElement ,所以这两个 HTML 元素有许多共同的属性和方法,可以放在一起介绍。
异步编程是 Node.js 最大的特点,没有掌握异步编程就不能说是真正学会了 Node.js。本章将介绍与异步编程相关的各种知识。
程序中我们有时候想让返回按钮,按照自己的需求调整页面,而不是单纯的按照系统返回上一级,这个问题很简单,重写 onKeyDown 方法即可。
async 和 defer 是 HTML 文档中引入外部 JavaScript 文件时使用的属性。它们影响浏览器加载和执行脚本的方式。
JavaScript 因为互联网而生,紧跟着浏览器的出现而问世。回顾它的历史,就要从浏览器的历史讲起。1990年底,欧洲核能研究组织(CERN)科学家 Tim Berners-Lee,在全世界最大的电脑网络——互联网的基础上,发明了万维网(World Wide Web),从此可以在网上浏览网页文件。最早的网页只能在操作系统的终端里浏览,也就是说只能使用命令行操作,网页都是在字符窗口中显示,这当然非常不方便。
键盘事件由用户击打键盘触发,主要有 keydown、keypress、keyup 三个事件,它们都继承了 KeyboardEvent 接口。
表单(<form>)用来收集用户提交的数据,发送到服务器。比如,用户提交用户名和密码,让服务器验证,就要通过表单。表单数据以键值对的形式向服务器发送,这个过程是浏览器自动完成的。但是有时候,我们希望通过脚本完成过程,构造和编辑表单键值对,然后通过 XMLHttpRequest.send() 方法发送。浏览器原生提供了 FormData 对象来完成这项工作。