此教程转载自开源项目 网道(WangDoc.com)
https://github.com/wangdoc/javascript-tutorial,感谢大佬整理分享
#JavaScript 教程
<video>,<audio>
概述
<video>
元素用来加载视频,是HTMLVideoElement
对象的实例。<audio>
元素用来加载音频,是HTMLAudioElement
对象的实例。而HTMLVideoElement
和HTMLAudioElement
都继承了HTMLMediaElement
,所以这两个 HTML 元素有许多共同的属性和方法,可以放在一起介绍。
理论上,这两个 HTML 元素直接用src
属性指定媒体文件,就可以使用了。
<option>
元素
<option>
元素表示下拉框(<select>
,<optgroup>
或<datalist>
)里面的一个选项。它是 HTMLOptionElement 接口的实例。
属性
除了继承 HTMLElement 接口的属性和方法,HTMLOptionElement 接口具有下面的属性。
<button>
元素
<button>
元素继承了HTMLButtonElement
接口。它有以下的实例属性。
(1)HTMLButtonElement.accessKey
HTMLButtonElement.accessKey
属性返回一个字符串,表示键盘上对应的键,通过Alt + 这个键
可以让按钮获得焦点。该属性可读写。
<input>
元素
<input>
元素主要用于表单组件,它继承了 HTMLInputElement 接口。
HTMLInputElement 的实例属性
特征属性
<form>
元素
<form>
元素代表了表单,继承了 HTMLFormElement 接口。
HTMLFormElement 的实例属性
<img>
元素
概述
<img>
元素用于插入图片,主要继承了 HTMLImageElement 接口。
浏览器提供一个原生构造函数Image
,用于生成HTMLImageElement
实例。
var img = new Image();
img instanceof Image // true
img instanceof HTMLImageElement // true
<a>
元素
<a>
元素用来设置链接。除了网页元素的通用接口(Node
接口、Element
接口、HTMLElement
接口),它还继承了HTMLAnchorElement
接口和HTMLHyperlinkElementUtils
接口。
属性
URL 相关属性
Web Worker
概述
JavaScript 语言采用的是单线程模型,也就是说,所有任务只能在一个线程上完成,一次只能做一件事。前面的任务没做完,后面的任务只能等着。随着电脑计算能力的增强,尤其是多核 CPU 的出现,单线程带来很大的不便,无法充分发挥计算机的计算能力。
Web Worker 的作用,就是为 JavaScript 创造多线程环境,允许主线程创建 Worker 线程,将一些任务分配给后者运行。在主线程运行的同时,Worker 线程在后台运行,两者互不干扰。等到 Worker 线程完成计算任务,再把结果返回给主线程。这样的好处是,一些计算密集型或高延迟的任务可以交由 Worker 线程执行,主线程(通常负责 UI 交互)能够保持流畅,不会被阻塞或拖慢。
IndexedDB API
概述
随着浏览器的功能不断增强,越来越多的网站开始考虑,将大量数据储存在客户端,这样可以减少从服务器获取数据,直接从本地获取数据。
现有的浏览器数据储存方案,都不适合储存大量数据:Cookie 的大小不超过 4KB,且每次请求都会发送回服务器;LocalStorage 在 2.5MB 到 10MB 之间(各家浏览器不同),而且不提供搜索功能,不能建立自定义的索引。所以,需要一种新的解决方案,这就是 IndexedDB 诞生的背景。