userData

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>

</head>
<body>
<input type="text" name="editor" id="editor"/><br/>
<input type="button" name="delete" id="delete" value=‘delete‘/>
<br/>
<input type="button" name="save" id="save" value=‘save‘/><br/>
<input type="button" name="reload" id="reload" value=‘reload‘/>
<script type="text/javascript">
var editor = document.getElementById("editor");
editor.value="";
var UserData = {
    userData : null,
    name : location.hostname,

    init:function(){
        if (!UserData.userData) {
            try {
                UserData.userData = document.createElement(‘INPUT‘);
                UserData.userData.type = "hidden";
                UserData.userData.style.display = "none";
                UserData.userData.addBehavior ("#default#userData");
                document.body.appendChild(UserData.userData);
                var expires = new Date();
                expires.setDate(expires.getDate()+365);
                UserData.userData.expires = expires.toUTCString();
            } catch(e) {
                return false;
            }
        }
        return true;
    },

    setItem : function(key, value) {

        if(UserData.init()){
            UserData.userData.load(UserData.name);
            UserData.userData.setAttribute(key, value);
            UserData.userData.save(UserData.name);
        }
    },

    getItem : function(key) {
        if(UserData.init()){
        UserData.userData.load(UserData.name);
        return UserData.userData.getAttribute(key)
        }
    },

    remove : function(key) {
        if(UserData.init()){
        UserData.userData.load(UserData.name);
        UserData.userData.removeAttribute(key);
        UserData.userData.save(UserData.name);
        }

    }
};

window.onbeforeunload=function(){
    console.log(document.getElementById("editor").value);
    if(!window.localStorage){
        UserData.setItem(‘editor-text‘,editor.value);
    }else{
        localStorage.setItem(‘editor-text‘,editor.value);
    }

};
window.onload=function(){
    console.log(document.getElementById("editor").value);
    if(!window.localStorage){
        if(UserData.getItem(‘editor-text‘)==undefined) {
            editor.value="";
        }else{
            editor.value=UserData.getItem(‘editor-text‘);
        }
    }else{
        if(localStorage.getItem(‘editor-text‘)!=null){
            editor.value=localStorage.getItem(‘editor-text‘);
        }else{
            editor.value="";
        }
    }

};
document.getElementById("delete").onclick=function(){
    if(!window.localStorage){
        UserData.remove(‘editor-text‘);
    }else{
        localStorage.removeItem(‘editor-text‘);
    }
}
document.getElementById("reload").onclick=function(){
    if(!window.localStorage){
        document.getElementById("editor").value=UserData.getItem(‘editor-text‘);
    }else{
        document.getElementById("editor").value=localStorage.getItem("editor-text");
    }
}
document.getElementById("save").onclick=function(){
    if(!window.localStorage){

        UserData.setItem(‘editor-text‘,document.getElementById("editor").value);
        console.log(UserData.getItem(‘editor-text‘));
    }else{
        console.log(document.getElementById("editor").value);
        localStorage.setItem(‘editor-text‘,document.getElementById("editor").value);
        console.log(localStorage.getItem("editor-text"));
    }
}

</script>
</body>
</html>
时间: 2024-10-31 08:14:29

userData的相关文章

设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限为 rwxr-xr—

#!/bin/bash cd /userdata i=1 while [ $i -le 50 ] do mkdir -p /userdata/user$i chmod o-x user$i i=$((i+1)) done

Qt之界面数据存储与获取(使用setUserData()和userData())

在GUI开发中,往往需要在界面中存储一些有用的数据,这些数据可以来配置文件.注册表.数据库.或者是server. 无论来自哪里,这些数据对于用户来说都是至关重要的,它们在交互过程中大部分都会被用到,例如:单击一个用户头像,显示该用户的详细信息(等级.昵称.姓名.个人说明). 简述 常见接口 数据源 setData和data 单独存储 整体存储 setItemData和itemData setUserData和userData 自定义数据 常见接口 Qt中,可以通过绝大部分已有的接口来存数数据.获

HTML5本地存储localStorage、sessionStorage及IE专属UserData

By:王美建 from:http://www.cnblogs.com/wangmeijian/p/4518606.html 转载请保留署名和出处! 在客户端存储数据用的最普遍的方式非cookie莫属,随着HTML5的普及,新的本地存储方式localStorage和sessionStorage将在标准浏览器上大展身手.localStorage和sessionStorage是HTML5的新特性之一,说是新特性,其实微软公司早在IE8上就已经支持localStorage和sessionStorage这

IE中的userData

之前做项目时用到了localstorage,但是考虑到浏览器存在IE8以下不兼容问题,所以来介绍以下IE中的userData. 本地存储解决方案很多,比如Flash SharedObject.Google Gears.Cookie.DOM Storage.User Data.window.name.Silverlight.Open Database等. 借用网上的一张图来看下目前主流的本地存储方案: Cookie: 在web中得到广泛应用,但局限性非常明显,容量太小,有些站点会因为出于安全的考虑

lua笔记之userdata

1.一直使用框架里封装好的c库,想着自己一点一点的写些例子,学习下,以后需要c库,可以自己写了. 下边是一个简单的userdata的例子--数组操作. newarray.c #include "lua.h" #include "lauxlib.h" #include <stdio.h> #include <stdlib.h> #include <assert.h> #include <string.h> typedef

lua userdata

userdata类型是为了方便C/C++对Lua进行扩展,因为在用C/C++扩展时,我们经常会自定义数据类型,如: typedef struct epoll_fd {      int epfd;     size_t size;     struct epoll_event *events; }epoll_fd_t; 我们要想在Lua中使用此类型的对象,就必须使用userdata类型来表示. 对于Lua而言,所有C/C++自定义的类型都是userdata类型,无法区分,那么在实际的应用中use

Lua 与C/C++ 交互系列:Light userdata翻译

利用零碎的时间,先把以后用的知识点提前准备好.最近比较忙,正在准备一篇绑定C++对象到Lua中.但是,不想轻易下手,希望做足准备. 这篇翻译来自于lua-users.org   ,原文地址. Light User Data Light userdata, like heavy userdata, are a form of userdata, which is one of the basic data types in Lua .Light userdata are characterized

JS本地存储信息的实现方式(localStorage 与 userData)

详细介绍请看: http://www.cnblogs.com/beiyuu/archive/2011/07/20/js-localstorage-userdata.html 里面涉及到的 demo 代码如下: <script type="text/javascript"> (function() { window.localData = { hname : location.hostname ? location.hostname : 'localStatus', isLo

快速掌握Lua 5.3 —— userdata (1)

Q:什么是"userdata"? A:"userdata"分为两类,"full userdata"和"light userdata".Lua使用他们来表示C中一些特殊的类型.前面的章节中,我们看到了如何通过C编写新的函数来扩展Lua:使用"userdata",我们将可以通过C编写新的类新来扩展Lua. Q:两种"userdata"的区别? A: \ "full userdata

快速掌握Lua 5.3 —— userdata (2)

Q:如何使用"userdata"的"metamethods"? A:我们继续来修改上一节中的例子,这次我们的目标是使用面向对象的方式调用"userdata"的方法.这个目标既可以在Lua中实现,也可以在C库中实现,我们先来看一个比较简单的方式,在Lua中实现."mylib.c"中代码无需更改,只需要修改"a.lua"中的代码, local array = require "mylib"