// Save data to a the current session's store
sessionStorage.setItem("username", "John");
// Access some stored data
alert( "username = " + sessionStorage.getItem("username"));
// Get the text field that we're going to track
var field = document.getElementById("field");
// See if we have an autosave value
// (this will only happen if the page is accidentally refreshed)
if ( sessionStorage.getItem("autosave")) {
// Restore the contents of the text field
field.value = sessionStorage.getItem("autosave");
}
// Check the contents of the text field every second
setInterval(function(){
// And save the results into the session storage object
sessionStorage.setItem("autosave", field.value);
}, 1000);
4条答案
按热度按时间lc8prwob1#
如果您支持现代浏览器,则可以使用HTML5 Local Storage。
持久本地存储是本地客户端应用程序相对于Web应用程序具有优势的领域之一。对于本地应用程序,操作系统通常提供一个抽象层,用于存储和检索应用程序特定的数据,如首选项或运行时状态。这些值可以存储在注册表、INI文件、XML文件、如果您的本地客户端应用程序需要的本地存储超出键/值对的范围,您可以嵌入自己的数据库,发明自己的文件格式,或任何数量的其他解决方案。
示例
Browser Compatibility
旧浏览器
使用多边形填充。
kx7yvsdv2#
取决于你想要存储的数据结构有多复杂,你可以考虑indexedDB,它仍然是pretty bleeding edge,但polyfil可以针对大多数现代桌面和移动的浏览器。
存储的数据并不比任何其他客户机存储模型更安全,因为它是要用JavaScript读取的。
API本身非常复杂,很难直接使用,所以您可能需要看看与CouchDB同步的 Package 器API,如PouchDB,或者如果您想要简单得多的东西,可以使用db.js。
x4shl7ld3#
您可以使用HTML5本地存储
对旧版浏览器使用聚合填充https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills#web-storage-localstorage-and-sessionstorage
f3temu5u4#
完全符合您的需求:
很多东西,但一个很酷的解决方案足以解决这个问题。而且,这个CouchDB非常简单,我敢打赌你会在一两天内阅读和学习所有东西。