(忘記是不是兩家郵箱都有這個功能)。
那這個功能是怎麼做的呢?
定時,我們知道怎麼弄,但儲存呢?也許我們會通過隱藏欄位等手段來存放資料。但是,這個卻有個缺點:那就是重新整理頁面後,資料將會丟失。
而此時,就該輪到我們很少關注,而且估計有不少人不知道的UserData 行為(userData Behavior)登場了:
而這個UserData是什嗎?怎麼用?,我將在文章最後轉載一篇介紹它的文章。
現在,我直接上例子,所謂無代碼,無真相嘛:
複製代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta name="generator" content="editplus" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<script type="text/javascript">
window.onload=function(){
var txtObj = document.getElementById('txt1');
var spanObj = document.getElementById('s1');
//自動儲存
txtObj.addBehavior("#default#userData");
var saveTimer= setInterval(function(){
txtObj.setAttribute('OValue',txtObj.value);
txtObj.save('SavedData');
spanObj.innerText='資料儲存於:'+(new Date());
setTimeout(function(){
spanObj.innerText='';
},1000);
},10000); //每分鐘儲存一次
document.getElementById('btn1').attachEvent('onclick',function(){
clearInterval(saveTimer); //取消儲存
txtObj.removeAttribute('OValue');
});
document.getElementById('btn2').attachEvent('onclick',function(){
txtObj.load('SavedData');
alert(txtObj.getAttribute('OValue'));
//txtObj.value = txtObj.getAttribute('OValue');
});
};
</script>
</head>
<body>
<span id="s1" style="color:red;"></span>
<p />
<textarea height="500" style="height:500px;width:500px;" id="txt1">
</textarea>
<p />
<input type="button" id="btn1" value="停止儲存" />
<input type="button" id="btn2" value="擷取儲存的值" />
</body>
</html>
將這段html複製下來運行一下,你就會發現,其實這跟郵箱中的定時儲存基本一致了,在潤色一下就OK了。
大家看下利用userData實現用戶端儲存表單資料 這篇文章。