RYF javascript笔记6


7 HTML网页的API

7.1 HTML网页元素

7.2 Canvas

Canvas API(画布)用于在网页实时生成图像,并且可以操作图像内容,相当于一个可以用JavaScript操作的位图。


    您的浏览器不支持canvas!

7.3 SVG图像

SVG是“可缩放矢量图”(Scalable Vector Graphics)的缩写,是一种描述向量图形的XML格式的标记化语言。


7.4 表单

7.5 文件与二进制数据的操作

ECMAScript 5引入了Blob对象,允许直接操作二进制数据。

File对象:负责处理那些以文件形式存在的二进制数据,也就是操作本地文件;
FileList对象:File对象的网页表单接口;
FileReader对象:负责将二进制数据读入内存内容;
URL对象:用于对二进制数据生成URL。

7.6 Web Worker

Web Worker的目的,就是为JavaScript创造多线程环境,允许主线程将一些任务分配给子线程。

Web Worker有以下几个特点:

同域限制。
DOM限制。子线程无法读取网页的DOM对象
脚本限制。子线程无法读取网页的全局变量和函数
文件限制。子线程无法读取本地文件

7.7 SSE:服务器发送事件(基本完成)

服务器发送事件(Server-Sent Events,简称SSE),就是浏览器向服务器发送一个HTTP请求,然后服务器不断单向地向浏览器推送“信息”。

SSE与WebSocket相似,都是用来建立浏览器与服务器之间的通信渠道。两者的区别在于:
1、WebSocket是全双工通道,可以双向通信,功能更强;SSE是单向通道,只能服务器向浏览器端发送。
2、WebSocket是一个新的协议,需要服务器端支持;SSE则是部署在HTTP协议之上的,现有的服务器软件都支持。

7.8 Page Visiblity

用于判断页面是否处于浏览器的当前窗口。

7.9 FullScreen

控制浏览器的全屏显示。
使用的时候,可以针对整个网页,也可以针对某个网页元素(比如播放视频的video元素)。

7.10 Web Speech

这个API用于浏览器接收语音输入。

7.11 requestAnimationFrame

requestAnimationFrame是浏览器用于定时循环操作的一个接口,类似于setTimeout,主要用途是按帧对网页进行重绘。
它与显示器的刷新频率保持同步。

7.12 WebSocket(基本完成)

HTML5提出了浏览器的WebSocket API。它允许服务器端与客户端进行全双工的通信。
WebSocket不使用HTTP协议,而是使用自己的协议。

7.13 WebRTC

WebRTC是“网络实时通信”(Web Real Time Communication)的缩写。它能实现两个浏览器之间直接进行视频和音频的通信,不经过服务器。

7.14 Web Components

网站往往需要一些相同的模块,比如日历、调色板等等,这种模块就被称为“组件”(component)。Web Component就是网页组件式开发的技术规范。

1、template标签表示网页中某些重复出现的部分的代码模板。它存在于DOM之中,但是在页面中不可见。
2、可以自定义网页元素,这就叫做Custom Element。它是Web component技术的核心。
3、Shadow DOM指的是,浏览器将模板、样式表、属性、JavaScript代码等,封装成一个独立的DOM元素。它可以向用户隐藏细节,直接提供组件,并且其封装内部样式表,不会影响到外部
4、HTML Import用于将外部的HTML文档加载进当前文档。我们可以将组件的HTML、CSS、JavaScript封装在一个文件里,然后插入到需要使用该组件的网页。

Web Components是非常新的技术,为了让老式浏览器也能使用,Google推出了一个函数库Polymer.js。

你可能感兴趣的:(RYF javascript笔记6)