H5 indexedDB 菜单操作
2015-12-19 11:46
501 查看
var stu = null; $(document).ready(function() { openDB(myDB.name, myDB.version); stu = getDataByKey(myDB.db, 'students', 1001); console.log(JSON.stringify(stu)); change_page() }); function change_page() { $(".menu li").each(function(i, n) { if ($(n).find("a").attr("href") == stu.name) { $(n).addClass("active") } else { $(n).removeClass("active") } }) } function getDataByKey(db, storeName, value) { var transaction = db.transaction(storeName, 'readwrite'); var store = transaction.objectStore(storeName); var result = store.get(value) var student = result.result; return student } function openDB(name, version) { var version = version || 1; var request = window.indexedDB.open(name, version); request.onerror = function(e) { console.log(e.currentTarget.error.message) }; request.onsuccess = function(e) { var db = e.target.result; myDB.db = db }; request.onupgradeneeded = function(e) { var db = e.target.result; if (!db.objectStoreNames.contains('students')) { db.createObjectStore('students', { keyPath: "id" }) } console.log('DB version changed to ' + version) } } var students = [{ id: 1001, name: "Byron", age: 24 }, { id: 1002, name: "Frank", age: 30 }, { id: 1003, name: "Aaron", age: 26 }]; var myDB = { name: 'test1', version: 4, db: null }; function addData(db, storeName) { var transaction = db.transaction(storeName, 'readwrite'); var store = transaction.objectStore(storeName); for (var i = 0; i < students.length; i++) { store.add(students[i]) } } function updateDataByKey(db, storeName, obj) { var transaction = db.transaction(storeName, 'readwrite'); var store = transaction.objectStore(storeName); store.delete(obj.id); store.add(obj) } function init_menu() { openDB(myDB.name, myDB.version); setTimeout(function() { addData(myDB.db, 'students') }, 1000) } //监听点击的那一个 $(".menu li").on("click",function(){var k = $(this).find("a").attr("href");var va ={id:1001,name:k,age:26}openDB(myDB.name,myDB.version);updateDataByKey(myDB.db,'students',va)});
相关文章推荐
- 关于html5
- 离线安装Cloudera Manager 5和CDH5.3.8(下)
- Html5 + Css3 制作QQ悬浮特效
- Html5获取图片原始宽高
- 《高性能HTML5》读后整理的Web性能优化内容
- 前端开发-HTML5基础
- 不一样的H5 3D动态内容
- yunhaisss@126.com源码 项目 下载 rest websocket html5
- h5案例分享 京东:有爱圣诞 无限京喜
- springMVC MultipartFile html5 多文件上传
- 转: html5 history api详解~很好的文章
- HTML5实现图片选择并预览
- 跟着韩老师学HTML5的tank大战一些问题和代码
- html5 meta标签属性整理
- HTML5表单新增元素与属性
- 百度移动联盟phonegap/cordova插件使用总结
- web -- 移动前端头部标签(HTML5 head meta)
- HTML5图片上传插件
- H5动画优化之路
- CDH5.4.7升级到CDH5.5.0