HTML5新特性基础学习笔记下
来源:互联网 发布:perl安装 linux 编辑:程序博客网 时间:2024/06/05 08:27
6.Web储存
客户端储存数据1.两种方式
1):localStorage - 没有时间限制的数据存储
2):sessionStorage - 针对一个session的存储数据
2.和cookie做对比
之前,这些都是由cookie完成的.但是cookie不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得cookie速度很慢而且效率也不高
localStorage
1.存储特点:
localStorage方法存储的数据没有时间限制.第二天,第二周或者下一年之后,依然可用
<textarea style="width:200px; height: 200px" id="ta"></textarea> <button id="btn">保存</button>
var ta;var btn;window.onload = function () { ta = document.getElementById("ta"); if(localStorage.text1){ ta.value = localStorage.text1; } btn = document.getElementById("btn"); btn.onclick = function () { localStorage.text1 = ta.value; }}sessionStorage
1.存储特点
sessionStorage方法针对一个session进行数据存储.当用户关闭浏览器窗口后,数据会被删除.
<span id="txt">0</span><button id="addbtn">add</button>
var num = 0;var txt;var btn;window.onload = function () { txt = document.getElementById("txt"); btn = document.getElementById("addbtn"); if(sessionStorage.num){ num = sessionStorage.num; showNum(); } btn.onclick = function () { num ++ ; sessionStorage.num = num; showNum(); }}function showNum(){ txt.innerHTML = num;}
7.应用缓存与Web Workers
应用缓存1.什么是应用程序缓存:
HTML引入了应用程序缓存,这意味着web应用可进行缓存,并可在没有因特网连接时进行访问
2.应用缓存的优势:
1):离线浏览 - 用户可在应用离线时使用它们
2):速度 - 已缓存资源加载得很快
3):减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源
3.实现缓存:
如需启用应用程序缓存,请在文档的<html>标签中包含manifest属性
manifest文件的建议的文件扩展名是:".appcache";
4.Manifest文件:
1):CACHE MANIFEST - 在此标题下列出的文件将在首次下载后进行缓存
2):NETWORK - 在此标题下列出的文件需要与服务器的连接,且不会被缓存
3):FALLBACK - 在此标题下列出的文件规定当页面无法访问时的回退页面(如404)
<html manifest="index.appcache">
<script src="js.js"></script> <link type="text/css" rel="stylesheet" href="style.css"></head><body> <h1 class="h1">Hello HTML5!</h1></body>index.appcache:
CACHE MANIFESTCACHE:index.htmljs.jsNETWORK:style.cssWeb Workers
1.什么是Web Worker?
web worker 是运行在后台的JavaScript,独立于其他脚本,不会影响页面的性能
2.方法:
postMessage() - 它用于向HTML页面传回一段消息
terminate() - 终止web worker,并释放浏览器/计算机资源
3.事件:
onmessage
<div id="numDiv">0</div><br><button id="start">开</button><button id="stop">关</button>
var numDiv;var work;window.onload = function () { numDiv = document.getElementById("numDiv"); document.getElementById("start").onclick = startWorker; document.getElementById("stop").onclick = function () { if(work){ work.terminate(); work = null; } }}function startWorker() { if(work){ return; } work = new Worker("count.js"); work.postMessage(numDiv.innerText);//获取DIV的内容 work.onmessage = function (e) { numDiv.innerHTML = e.data; }}count.js:
var countNum;function count() { onmessage = function (e) { countNum = e.data; count2(); }}function count2(){ postMessage(countNum); countNum++; setTimeout(count2, 1000);}count();
8.服务器推送事件
HTML5服务器推送事件介绍1.HTML5服务器推送事件介绍:
服务器推送事件(Server-sent Events)是HTML5规范中的一个组成部分,可以用来从服务端时时推送数据到浏览器端
2.传统的服务端推送数据技术:
WebSocket:WebSocket规范是HTML5中一个重要组成部分,已经被很多主流浏览器所支持,也有不少基于WebSocket开发的应用.正如名称所表示的一样,WebSocket所用的套接字连接,基于TCP协议.使用WebSocket之后,实际上在服务器端和浏览器之间建立一个套接字连接,可以进行双向的数据传输.WebSocket的功能是很强大的,使用起来也灵活,可以适用于不同的场景.不过WebSocket技术也比较复杂,包括服务器端和浏览器端的实现都不同于一般的Web应用.
HTTP协议:简易轮询,即浏览器端定时向服务器端发出请求,来查询是否有数据更新.这种做法简单,可以在一定程度上解决问题.不过对于轮训的时间间隔需要进行仔细考虑.轮训的间隔过长,会导致用户不能几十接收到更新的数据;轮询的建个过短,会导致查询请求过多,增加服务器的负担
HTML5服务器推送事件实现
1.杜武器带码头:
header('Content-Type:text/event-stream');
2.EventSource事件:
onopen 服务器的链接被打开
onmessage 接收消息
onerror 错误发生
0 0
- HTML5新特性基础学习笔记下
- HTML5新特性基础学习笔记上
- HTML5学习01-基础讲解、新特性
- HTML5基础--新特性
- HTML5新特性笔记
- HTML5 新特性学习
- HTML5学习笔记【一】——初识HTML5新特性
- html5学习笔记(-),html5新特性介绍教程
- HTML学习笔记(HTML5新特性)NO.5
- Html5的新特性学习
- html5学习笔记---01.HTML5介绍,02.HTML5的新特性
- 【HTML5】HTML5 高级程序设计 学习笔记1 HTML5新特性简介
- HTML5(一)学习HTML5新特性
- HTML5新特性与CSS基础
- JavaSE基础学习笔记-提高篇-JDK1.5新特性
- html5的一些新特性笔记详解
- HTML5的一些新特性学习
- HTML5开发笔记_2、HTML5基础_1.HTML5特性简介
- 盒子(Box)
- 活动图介绍(Activity Diagram)
- 翻译经典之《Cisco Lan Switching》:前言
- BootStrap-CSS选项列表大全
- 13.1.2 异步下载网页
- HTML5新特性基础学习笔记下
- android 中使用单元测试 Junit的步骤
- redis 第一节 安装redis
- 0004 嘿嘿
- 经典Hanoi问题
- HDOJ题目4288 Coder(vector)
- 成功的背后!(给所有IT人)
- mysql 模糊查询知识点
- HDU 1237 简单计算器