html5补充(本地存储·)
HTML5语义化标签
HTML5新增的语义化标签主要有:
article>、<section、<nav、<aside、<header、<footer、<time等等…
为了在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构
语义化标准主要针对搜索引擎的
新标签在一个页面中可以使用多次
IE9中需要把元素转换成块级元素
移动端更喜欢用这些标签
H5新增标签不止上面这些准
HTML5 浏览器支持
所有现代浏览器都支持 HTML5。
此外,所有浏览器,不论新旧,都会自动把未识别元素当做行内元素来处理。
正因如此,您可以帮助老式浏览器处理”未知的“ HTML 元素。
video标签
video标签的作用:播放视频。
第一种格式:
<video src="" autoplay="autoplay"></video>
1
第一种格式中video标签的属性:
src属性用于高速video标签需要播放的视频地址;
autoplay属性用于告诉video标签是否需要自动播放视频;
controls属性用于告诉video标签是否需要显示控制条;
poster属性用语告诉video标签在视频没有播放之前显示的占位图片;
loop属性用于告诉video标签在视频播放完毕之后是否循环播放,不能控制其播放进度暂停静音之类,一般用于广告;
preload属性用于预加载视频,要注意preload属性与autoplay属性相冲,若设置了autoplay属性则preload属性会失效;
muted属性 用于静音;
width属性 宽度;
height属性 高度。
video标签的是第二种格式存在的意义是:解决浏览器适配问题。video元素支持三种视频格式,可以把这三种格式都通过source标签指定给video标签,以后当浏览器播放视频时就会从这三种中选择一种自己支持的格式来播放。
<video autoplay="autoplay" controls="controls" poster="" loop="loop" muted="muted" width="" height=""><source src="" type="video·/webm"><source src="" type="video·/mp4"><source src="" type="video·/ogg">
</video>
audio标签:用于播放音频。有三个属性在audio中不能使用:height,width,poster。
详情和概要标签
作用:利用summary标签来描述概要信息,利用datails标签来描述详情信息。默认情况下是折叠只显示概要,想看见详情必须点击。
本地存储:
什么是 HTML 本地存储?
通过本地存储(Local Storage),web 应用程序能够在用户浏览器中对数据进行本地的存储。
在 HTML5 之前,应用程序数据只能存储在 cookie 中,包括每个服务器请求。
本地存储则更安全,并且可在不影响网站性能的前提下将大量数据存储于本地。
与 cookie 不同,存储限制要大得多(至少5MB),并且信息不会被传输到服务器。
HTML 本地存储提供了两个在客户端存储数据的对象:
window.localStorage - 存储没有截止日期的数据
window.sessionStorage - 针对一个 session 来存储数据(当关闭浏览器标签页时数据会丢失)
在使用本地存储时,看一下 localStorage 和 sessionStorage 的浏览器支持:
if (typeof(Storage) !== "undefined") {// 针对 localStorage/sessionStorage 的代码
} else {// 抱歉!不支持 Web Storage ..
}
localStorage 对象存储的是没有截止日期的数据。当浏览器被关闭时数据不会被删除,在下一天、周或年中,都是可用的。
如:
// 存储
localStorage.setItem("nodatename", "lch");
// 取回
document.getElementById("result").innerHTML = localStorage.getItem("nodatename");
w3cschool例子:
<!DOCTYPE html>
<html>
<head>
<script>
function clickCounter() {if(typeof(Storage) !== "undefined") {if (localStorage.clickcount) {localStorage.clickcount = Number(localStorage.clickcount)+1;} else {localStorage.clickcount = 1;}document.getElementById("result").innerHTML = "您已经点击这个按钮 " + localStorage.clickcount + " 次。";} else {document.getElementById("result").innerHTML = "抱歉!您的浏览器不支持 Web Storage ...";}
}
</script>
</head>
<body>
<p><button onclick="clickCounter()" type="button">请点击这里!</button></p>
<div id="result"></div>
<p>请点击按钮使计数器递增。</p>
<p>请关闭浏览器或标签页,然后再试一次,计数器将继续计数(不会重置)。</p>
</body>
</html>
sessionStorage 对象
sessionStorage 对象等同 localStorage 对象,不同之处在于只对一个 session 存储数据。如果用户关闭具体的浏览器标签页,数据也会被删除。
下例在当前 session 中对用户点击按钮进行计数:
if (sessionStorage.clickcount) {sessionStorage.clickcount = Number(sessionStorage.clickcount) + 1;
} else {sessionStorage.clickcount = 1;
}
document.getElementById("result").innerHTML = "在本 session 中,您已经点击这个按钮 " +
sessionStorage.clickcount + " 次。";
webworker:
众所周知,Javascript是运行在单线程环境中,无法同时运行多个脚本。
假设用户点击一个按钮,触发了一段用于计算的Javascript代码,那么在这段代码执行完毕之前,页面是无法响应用户操作的。
但是,如果将这段代码交给Web Worker去运行的话,那么情况就不一样了:浏览器会在后台启动一个独立的worker线程来专门负责这段代码的运行,因此,页面在这段Javascript代码运行期间依然可以响应用户的其他操作,从而达到多线程运行js。
webworker定义了一套 API,它允许一段JavaScript程序运行在主线程之外的另外一个线程中。
其中, Web Worker 规范中定义了两类工作线程,分别是专用线程Dedicated Worker和共享线程 Shared Worker。
其中,Dedicated Worker只能为一个页面所使用,而Shared Worker则可以被多个页面所共享。
WebWorker 可以做什么呢?
可加载一个JS,进行大量的复杂计算而不挂起主进程,并通过postMessage,onmessage进行通信,
可在worker中通过importScripts(url)加载另外的脚本文件
可使用 setTimeout(), clearTimeout(), setInterval(), and clearInterval()
可使用XMLHttpRequest来发送请求
可访问navigator的部分属性
可以close()结束线程
navigator对象:可使用localStorage和sessionStorage+XMLHttpRequest可以在线程中使用Ajax
预先抓取/或缓存数据
分析视频,音频数据
背景 I/O ,网络服务轮询
处理较大数组或超大 JSON 响应
中的图片过滤
更新本地网络数据库中的多行内容等等·
但是:它不能跨域加载JS
且worker内代码不能访问DOM
各个浏览器对Worker的实现不大一致,例如火狐里允许worker中创建新的worker,而Chrome中不行,不是每个浏览器都支持这个新特性
什么是应用程序缓存?
使用应用程序缓存,通过创建 cache manifest 文件,可轻松创建 web 应用的离线版本。
HTML5 引入了应用程序缓存,这意味着可对 web 应用进行缓存,并可在没有因特网连接时进行访问。
应用程序缓存为应用带来三个优势:
离线浏览 - 用户可在应用离线时使用它们
速度 - 已缓存资源加载得更快
减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源.
如:
WebWorker 使用
Worker创建 var worker = new Worker('work1.js')
Worker启动 worker.postMessage()
Worker事件 worker.addEventListener('message'/'error', function(e) {e.data;}, false);
html5补充(本地存储·)相关推荐
- HTML5 LocalStorage 本地存储
说到本地存储,这玩意真是历尽千辛万苦才走到HTML5这一步,之前的历史大概如下图所示: 最早的Cookies自然是大家都知道,问题主要就是太小,大概也就4KB的样子,而且IE6只支持每个域名20个co ...
- html5有本地存储吗,HTML5的本地存储
HTML5的存储方式 HTML5给我们提供了新的存取本地数据的方法. 在HTML5之前,存储主要是放在cookie文件中.但是cookie文件有其自身的局限性. cookie文件每次请求的时候都会发送 ...
- HTML5 LocalStorage 本地存储原理详解
说到Web开发中的本地存储,大家最先想到的应该就是Cookies这玩意了,最早的Cookies自然是大家都知道,问题主要就是太小,大概也就4KB的样子,而且IE6只支持每个域名20个cookies,太 ...
- HTML5的本地存储详解
为什么80%的码农都做不了架构师?>>> Html5 学习系列(六)Html5本地存储和本地数据库 一个网站如何能在客户的浏览器存储更多的数据呢? 在Html4的时代在浏览器端 ...
- html5客户端本地存储之sessionStorage及storage事件
首先您可以看一下<JavaScript本地存储实践(html5的localStorage和ie的userData)> sessionStorage和上文中提到的localStorage非常 ...
- Html5 web本地存储
Web Storage是HTML5引入的一个非常重要的功能,可以在客户端本地存储数据,类似HTML4的cookie,但可实现功能要比cookie强大的多,cookie大小被限制在4KB,Web Sto ...
- html5中本地存储概念是什么?
html5中的Web Storage包括了两种存储方式:sessionStorage和localStorage. sessionStorage用于本地存储一个会话中的数据,这些数据只有在同一个会话中的 ...
- HTML5之本地存储localstorage
Web Storage是HTML5引入的一个非常重要的功能,可以在客户端本地存储数据,类似HTML4的cookie,但可实现功能要比cookie强大的多,cookie大小被限制在4KB,Web Sto ...
- HTML5 LocalStorage 本地存储,刷新值还在
这里是新手了解,生产用到的话,请移到具有兼容性好的 store.js H5的两种存储技术的最大区别就是生命周期. 1. localStorage是本地存储,存储期限不限: 2. sessionStor ...
- HTML5 localStorage本地存储
介绍 localStorage(本地存储)的使用方式.包括对存储对象的添加.修改.删除.事件触发等操作. 目录 1. 介绍 1.1 说明 1.2 特点 1.3 浏览器最小版本支持 1.4 适合场景 2 ...
最新文章
- 十六、希尔排序即其优化(交换法--->移动法)
- 使用指针统计字符串中的数字字符的个数
- 2.5.jieba分词工具、Jieba安装、全模式/精确模式、添加自定义词典、关键词抽取、词性标注、词云展示
- pmp每日三题(2022年3月2日)
- 记录 之 numpy扩充某一维度,并重复填充
- 数据挖掘学习日志(part2)--主成分法确定权重与R实现
- python如何将数据保存到本地json文件
- 超实用!!!使用IDEA插件Alibaba Cloud Toolkit工具一键部署本地应用到ECS服务器
- 加密保护软件 WinLicense常见问题整理大全(四)
- php 各种进制表示,常用的进制有哪些
- FOC项目知识点总结三 | 完全搞懂 Clarke 与 Park 变换(附动图,仿真文件以及详细讲解数学推导过程)
- 计算机科学数学背景,计算机科学中的数学教育.pdf
- RuntimeError: Expected object of type torch.cuda.LongTensor but found type torch.cuda.IntTensor
- python中get函数是什么意思_详解python中get函数的用法(附代码)_后端开发
- 使用 html2canvas 生成图片
- pc端emoji表情
- SCI论文投稿前必须检查的29个细节
- SII-Slave Information Interface
- 基于OpenCV的简易实时手势识别(含代码)
- java运用itextpdf实现根据模板生成合同并返回网络路径,供用户查看