HTML5 -- 浏览器数据缓存 -- indexedDB】的更多相关文章

IndexedDB是一种可以让你在用户的浏览器内持久化存储数据的方法,为web应用提供了丰富的查询功能,使我们的应用在在线和离线都能正常工作. 由于 IndexedDB 本身的规范还在持续演进中,当前的 IndexedDB 的实现还是使用浏览器前缀.在规范更加稳定之前,浏览器厂商对于标准 IndexedDB API 可能都会有不同的实现.但是一旦大家对规范达成共识的话,厂商就会不带前缀标记地进行实现.实际上一些实现已经移除了浏览器前缀:IE 10,Firefox 16 和 Chrome 24.…
Classes Dexie DexieError Collection and():Add JS based criteria to collection(向集合添加基于JS的条件) delete():Delete all objects in the collection(删除集合中的所有对象) distinct():Remove duplicates of items with same primary key(删除具有相同主键的项的重复项) modify():Modify all obje…
sessionStorage 会话数据,localStorage 没有过期时间 两个的API基本都一样的 基本的使用 // 保存一个数据 sessionStorage.setItem('key', 'value'); // 获取指定数据, 不存在返回 null var data = sessionStorage.getItem('key'); // 删除指定数据 sessionStorage.removeItem('key'); // 清空 sessionStorage.clear(); 监听用…
现实中,服务器在向浏览器发送的数据中,一部分数据是不经常更新的,如果能将这部分数据缓存到浏览器端,将会大大降低传输的数据,提高应用的性能.通过Expires策略,可以使用HTTP 协议定义的缓存机制将数据缓存到浏览器中.下面我们看看Net是如何实现将数据缓存到浏览器中的. protected void Page_Load(object sender, EventArgs e) { if (Request.Headers["If-Modified-Since"] != null &…
js 整数限制 浏览器文件大小限制 https://w3c.github.io/FileAPI/#dom-blob-arraybuffer https://developer.mozilla.org/en-US/docs/Web/API/Blob <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>upload</…
IE浏览器清除缓存方法如下: 打开IE浏览器,依次点击"工具-Internet选项-常规-删除",如下图所示, 有的时候发现你明明已经执行了删除,但是实际上还是有缓存数据,一般是因为"删除浏览历史记录"中的选项没有正确勾选导致,这里尤其要说明的一点是,如果"保留收藏夹网站数据"这个复选框被勾选上,那么你再清理数据的时候就会忽略掉收藏夹的这些网站数据,因此,当你把你常用的网站放到收藏夹里面,然后又希望清除这些数据的时候,这个复选框就一定不要勾上.我…
1. 前言 在高访问量的web系统中,缓存几乎是离不开的:但是一个适当.高效的缓存方案设计却并不容易:所以接下来将讨论一下应用系统缓存的设计方面应该注意哪些东西,包括缓存的选型.常见缓存系统的特点和数据指标.缓存对象结构设计和失效策略以及缓存对象的压缩等等,以期让有需求的同学尤其是初学者能够快速.系统的了解相关知识. 2. 数据库的瓶颈 2.1 数据量 关系型数据库的数据量是比较小的,以我们常用的MySQL为例,单表数据条数一般应该控制在2000w以内,如果业务很复杂的话,可能还要低一些.即便是…
jQuery在1.2后引入jQuery.data(数据缓存系统),主要的作用是让一组自定义的数据可以DOM元素相关联——浅显的说:就是让一个对象和一组数据一对一的关联. 一组和Element相关的数据如何关联着这个Element一直是web前端的大姨妈,而最初的jQuery事件系统照搬Dean Edwards的addEvent.js:将回调挂载在EventTarget上,这样下来,循环引用是不可忽视的问题.而在web前端中,数据和DOM的关系太过基情和紧张,于是jQuery在1.2中,正式缔造了…
jQuery1.9.1源码分析--数据缓存Data模块 阅读目录 jQuery API中Data的基本使用方法介绍 jQuery.acceptData(elem)源码分析 jQuery.data(elem, name, data)源码分析 internalRemoveData方法源码分析 internalData方法的源码分析 jQuery.fn.extend({data: function( key, value ) {}})源码分析 jQuery.extend({removeData: fu…
一.jQuery数据缓存基本原理 jQuery数据缓存就两个全局Data对象,data_user以及data_priv; 这两个对象分别用于缓存用户自定义数据和内部数据: 以data_user为例,所有用户自定义数据都被保存在这个对象的cache属性下,cache在此姑且称之为自定义数据缓存: 自定义数据缓存和DOM元素/javascript对象通过id建立关联,id的查找通过DOM元素/javascript元素下挂载的expando属性获得 话不多说,直接上代码.相关思路在代码注释中都有讲解…
这一章主要讲的是jQuery的缓存系统的历史发展,以及他自己的框架的缓存系统的实现.都是源码解析. 我就挑几个重点讲下: (1)jQuery的缓存机制的原理 jQuery的缓存机制实现的原理是在元素中添加自定义属性,然后把这个自定义属性赋值为uid,而这个uid就在jQuery的cache对象中的一个属性(唯一的),这个唯一的属性其实是一个对象,这个对象里面存储的就是你给这个元素添加的数据. 举个例子: <input id="chaojidan" name="chaoj…
使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本. 什么是应用程序缓存(Application Cache)? HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问. 应用程序缓存为应用带来三个优势: 离线浏览 - 用户可在应用离线时使用它们 速度 - 已缓存资源加载得更快 减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源. 浏览器支持 所有主流浏览器均支持应用程序缓存,除了 Inte…
HTML5是HTML最新的修订版本,2014年10月由万维网联盟(W3C)完成标准制定. HTML5的设计目的是为了在移动设备上支持多媒体. HTML5 简单易学. 什么是 HTML5? HTML5 是下一代 HTML 标准. HTML , HTML 4.01的上一个版本诞生于 1999 年.自从那以后,Web 世界已经经历了巨变. HTML5 仍处于完善之中.然而,大部分现代浏览器已经具备了某些 HTML5 支持. HTML5 是如何起步的? HTML5 是 W3C 与 WHATWG 合作的结…
习惯性的贴几个参考链接: W3School-HTML 5 应用程序缓存 官方 MDN window.applicationCache 接口文档 官方 MDN 用法示例 看所有的教程不如直接看最原始的官方教程,下面的内容是对官方教程(官方 MDN 用法示例)中自己觉得有价值的部分的文档的翻译: Entries in a cache manifest file The cache manifest file is a simple text file that lists the resources…
缓存概念: ------页面缓存: html.JS.CSS等,这些缓存资源是由于浏览器的行为而产生; ------数据缓存 ----------AppCache:  Cache Manifest 操作:  需要服务器  与 客户端  相互配合: 所有的缓存数据都由开发者直接完全地掌控. ----------DOM Storage(Web Storage):   local storage: session storage: 存储一些简单的用key/value对即可解决的数据 Manifest …
原文地址:http://www.wmyouxi.com/a/60368.html#ixzz3tGYG9JwC 1. 前言 在高访问量的web系统中,缓存几乎是离不开的:但是一个适当.高效的缓存方案设计却并不容易:所以接下来将讨论一下应用系统缓存的设计方面应该注意哪些东西,包括缓存的选型.常见缓存系统的特点和数据指标.缓存对象结构设计和失效策略以及缓存对象的压缩等等,以期让有需求的同学尤其是初学者能够快速.系统的了解相关知识. 2. 数据库的瓶颈 2.1 数据量 关系型数据库的数据量是比较小的,以…
javascript表达行为,css表达外观,注意HTML既表达结构(逻辑结构),又表达内容(数据本身)通常需要更新数据时,并不需要更新结构,正是这种不改变组织结构仅改变数据的诉求,推动了数据拉取和数据推送技术的产生. SSE是一种允许服务器端向客户端推送新数据(简称数据推送)的HTML5技术.数据推送有两种替代方案:无更新方案和数据拉取方案. 无更新方案: 加载完毕HTML之后,得到一个HTML页面,之后浏览器会请求图片.CSS文件和JavaScript文件等,他们都是浏览器可以缓存的静态文件…
一.实现原理: 对于DOM元素,通过分配一个唯一的关联id把DOM元素和该DOM元素的数据缓存对象关联起来,关联id被附加到以jQuery.expando的值命名的属性上,数据存储在全局缓存对象jQuery.cache中.在读取.设置.移除数据时,将通过关联id从全局缓存对象jQuery.cache中找到关联的数据缓存对象,然后在数据缓存对象上执行读取.设置.移除操作. 对于Javascript对象,数据则直接存储在该Javascript对象的属性jQuery.expando上.在读取.设置.移…
使用HTML5,通过创建 cache manifest 文件,可以轻松创建web应用的离线缓存.   什么事应用程序缓存? HTML5引入了应用程序缓存,这意味着 web 应用可进行缓存,并在没有因特网连接时进行访问.   应用程序缓存为应用带来三个优势: 1.离线浏览 - 用户可在应用离线时使用它们 2.速度 - 已缓存资源加载的更快 3.减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源.   浏览器支持 IE10,火狐,谷歌,苹果,欧鹏支持应用程序缓存.   Cache Man…
ylbtech-HTML5: HTML5 应用程序缓存 1.返回顶部 1. HTML5 应用程序缓存 使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本. 什么是应用程序缓存(Application Cache)? HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问. 应用程序缓存为应用带来三个优势: 离线浏览 - 用户可在应用离线时使用它们 速度 - 已缓存资源加载得更快 减少服务器负载 - 浏览…
cookie Cookie 是一些数据,由服务器生成,发送给浏览器,一旦用户从该网站或服务器退出,Cookie 就存储在用户本地的硬盘上,下一次请求同一网站时会把该cookie发送给服务器.Cookie的作用就是用于解决"如何记录客户端的用户信息". 可以使用 document.cookie 属性来创建 .读取.及删除 cookie. 创建 cookie : document.cookie="username=Irelia; 为 cookie 添加一个过期时间(以 UTC 或…
历史背景: jQuery从1.2.3版本引入数据缓存系统,主要的原因就是早期的事件系统 Dean Edwards 的 ddEvent.js代码 带来的问题: 没有一个系统的缓存机制,它把事件的回调都放到EventTarget之上,这会引发循环引用 如果EventTarget是window对象,又会引发全局污染 不同模块之间用不同缓存变量 一般jQuery开发,我们都喜欢便捷式的把很多属性,比如状态标志都写到dom节点中,也就是HTMLElement 好处:直观,便捷 坏处: 循环引用 直接暴露数…
mongodb和memcached不是一个范畴内的东西.mongodb是文档型的非关系型数据库,其优势在于查询功能比较强大,能存储海量数据.mongodb和memcached不存在谁替换谁的问题. 和memcached更为接近的是redis.它们都是内存型数据库,数据保存在内存中,通过tcp直接存取,优势是速度快,并发高,缺点是数据类型有限,查询功能不强,一般用作缓存.在我们团队的项目中,一开始用的是memcached,后来用redis替代. 相比memcached: 1.redis具有持久化机…
Memcached 数据缓存系统 常用命令及使用:http://www.cnblogs.com/wayne173/p/5652034.html Memcached是一个自由开源的,高性能,分布式内存对象缓存系统. Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串.对象).这些数据可以是数据库调用.API调用或者是页面渲染的结果. Memcached简洁而强大.它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题.它的API兼容大部分流行的开…
前言 最近比较烦,深圳的工作还没着落,论文不想弄,烦.....今天看了下jquery的数据缓存的代码,参考着Aaron的源码分析,自己有点理解了,和大家分享下.以后也打算把自己的jquery的学习心得写一个系列,当然和大神的源码分析是比不了的,只是自己在看的时候有好多地方是比较难理解的,为新手提供些便捷的学习方法,以后我会把我这些流水账整理成一个菜鸟学习jquery源码系列,现在就看到哪写到那,见谅. 内存泄露 首先看看什么是内存泄露,这里直接拿来Aaron中的这部分来说明什么是内存泄露,内存泄…
应用缓存机制可以参考http://www.w3school.com.cn/html5/html_5_app_cache.asp,不再赘述.利用此机制,html5游戏可以实现和native app类似的更新和运行环境,减少文件的频繁下载. 1. Server设置: nginx, 修改manifest文件的mime type映射,打开文件$nginx/conf/mime.types,增加 text/cache-manifest manifest; 2. 网页文件设置: 在index.html的<ht…
为什么使用浏览器端数据库:随着浏览器的处理能力不断增强,越来越多的网站开始考虑,将大量数据储存在客户端,这样可以减少用户等待从服务器获取数据的时间. 一.localStorage  — 本地存储  可以长期存储数据,没有时间限制. 可以存储 :数组.json数据.图片.脚本.样式文件 function test(){ if(window.localStorage){//判断浏览器是否支持 localStorage var ls=window.localStorage; ls.setItem("n…
突然想用html5的离线缓存,但是一直没有成功,在各种群里问发现很多人都没什么经验,最终终于在各种论坛找到解决方案了.下面就简单记录一下相关情况. 一.离线缓存的优点 我们都知道离线缓存主要是用来减少web应用对网络的依赖的,也就是说让你能偶在没网的情况下也能使用(当然是某些功能).初看有点像传统的缓存,但是还是有很大不同的,首先离线缓存可以缓存整个应用,而普通的则是缓存单个界面:离线缓存的更新更加方便,可以动态通知,而传统缓存则是通过返回状态码来判断更新的:离线缓存还可以指定有网和没网分别加载…
Web缓存的工作原理 所有的缓存都是基于一套规则来帮助他们决定什么时候使用缓存中的副本提供服务(假设有副本可用的情况下,未被销毁回收或者未被删除修改).这些规则有的在协议中有定义(如HTTP协议1.0和1.1),有的则是由缓存的管理员设置(如DBA.浏览器的用户.代理服务器管理员或者应用开发者). 浏览器端的缓存规则 对于浏览器端的缓存来讲,这些规则是在HTTP协议头和HTML页面的Meta标签中定义的.他们分别从新鲜度和校验值两个维度来规定浏览器是否可以直接使用缓存中的副本,还是需要去源服务器…
通过HTTP头控制浏览器的缓存 浏览器缓存是提高用户体验和提升程序性能的一个很重要的途径,通过浏览器的缓存控制,可以对实时性要求不高的数据进行缓存,可以减少甚至不需要再次对服务器的请求就可以显示数据. 本文将介绍如果通过HTTP协议中的header来控制浏览器的缓存行为,建议大家在看的时候写代码试验下,这样对这些header的理解会更深一点. HTTP协议定义了四个可以用来控制浏览器缓存的HTTP头,它们是: Last-Modified Expires Pragma: no-cache Cach…