直接看代码吧

1、引入ueditor和ueditor的使用我就不细说了 详情请戳http://blog.csdn.net/wangdianyong/article/details/39780709

2、ueditor.jsp

<head>

<!-- 引入jquery -->

<script type="text/javascript" src="js/jQuery2.0.js"></script>

<!-- 引入jquery结束 -->

<!-- 引入ueditor -->

<script type="text/javascript" src="ueditor/ueditor.config.js"></script>

<script type="text/javascript" src="ueditor/ueditor.all.min.js"></script>

<!--引入ueditor结束  -->

<!-- 引入localStorage.js -->

<script type="text/javascript" src="js/localStorage.js"></script>

<!-- 引入localStorage.js结束 -->





<script type="text/javascript">

$(document).ready(function() {

var ue = UE.getEditor('container');

ue.addListener("ready", function() {

// editor准备好之后才干够使用

var html = localStorage.getItem("ctValue");

alert(html);

ue.setContent(html);





});





});

</script>

</head>

<body>

${param.content }

<p>

<span id="span" name="span"></span>

</p>

<form action="ueditor.jsp" method="post">





<script id="container" name="content" type="text/plain"

style="width:800px;height:400px;">

    </script>





<script type="text/javascript">

var ue = UE.getEditor('container');

</script>

<input type="submit" value="提交">

</form>

</body>

localStorage.js

$(document).ready(

function() {





if (!window.localStorage) {

alert('您的浏览器不支持 localStorage 技术!');

} else {

// var spanObj = $("span");

// alert("spanObj" + spanObj);

var saveTimer = setInterval(

function() {

var str = "";

if (document.all) {/* IE */

str = document.frames[1].document.body.innerHTML;

} else {/* Chrome,ff */

// str =

// document.getElementById("container").contentDocument.body.innerHTML;

var ue = UE.getEditor('container');

str = ue.getContent();

}

if (str.length > 20

&& (str.indexOf("。") > -1 || str

.indexOf(",") > -1)) { /*

* 有内容才保存

* 且有句号或逗号

*/

localStorage.setItem("ctValue", str);

var d = new Date();

var YMDHMS = d.getFullYear() + "-"

+ (d.getMonth() + 1) + "-"

+ d.getDate() + " "

+ d.getHours() + ":"

+ d.getMinutes() + ":"

+ d.getSeconds();

// alert(YMDHMS);

// spanObj.innerHTML = '(数据保存于: ' +

// YMDHMS

// + ')';

// var text = $("span").text = '(数据保存于: '

// + YMDHMS + ')';

$("#span").text('(数据保存于: ' + YMDHMS + ')');





// alert(text);

setTimeout(function() {

// spanObj.innerText = '';

}, 5000);

}

}, 25000); // 每隔N秒保存一次

function stoplocs() {

clearInterval(saveTimer); // 停止保存

// localStorage.removeItem("ctValue"); //清空

}

function showlocs() {

var html = localStorage.getItem("ctValue");

editor.setContent(html);

// alert(localStorage.getItem("ctValue"));

}

}

});

主要的定时保存为草稿的内容就实现了,你可关闭你的浏览器又一次打开页面发现自己曾经编辑的内容并没有因意外情况的出现而丢失。

源码下载地址http://download.csdn.net/detail/wangdianyong/8292399

利用localStorage实现对ueditor编辑内容定时保存为草稿的更多相关文章

  1. 利用C#实现对excel的写操作

    一.COM interop 首先我们要了解下何为COM Interop,它是一种服务,可以使.NET Framework对象能够与COM对象通信.Visual Studio .NET 通过引入面向公共 ...

  2. ASP.NET中利用Split实现对Checkbox的字符串分离放到DataTable里面

    一.背景 昨天唐欢问了我一个问题: 现在有一个CheckBox和一个Label如下图: 要实现选中CheckBox,点击下面打印按钮的时候要做成这个样子的如下图: 简单的说就是档案编号作为表中的一个列 ...

  3. 利用Python实现对Web服务器的目录探测

    今天是一篇提升技能的干货分享,操作性较强,适用于中级水平的小伙伴,文章阅读用时约3分钟. PART 1/Python Python是一种解释型.面向对象.动态数据类型的高级程序设计语言. Python ...

  4. 利用 python 实现对web服务器的目录探测

    一.pythonPython是一种解释型.面向对象.动态数据类型的高级程序设计语言.python 是一门简单易学的语言,并且功能强大也很灵活,在渗透测试中的应用广泛,让我们一起打造属于自己的渗透测试工 ...

  5. Python利用Plotly实现对MySQL中的数据可视化

    Mysql表数据: demo.sql内容 create table demo( id int ,product varchar(50) ,price decimal(18,2) ,quantity i ...

  6. 通过监听键盘,实现对UITextView的内容移动

    视图出现时,增加观察 - (void)viewWillAppear:(BOOL)animated { // 增加对键盘的监听 [[NSNotificationCenter defaultCenter] ...

  7. 利用WebClient实现对Http协议的Post和Get对网站进行模拟登陆和浏览

    我们在一些场合经常需要模拟浏览器进行一些操作,比如模拟投票,或者模拟点击,或者Web游戏外挂.而C#中封装好的WebClient可以在某些要求不算搞的场景实现Http的Post和Get.具体请见代码: ...

  8. C# 实现对PPT编辑

    C# Presentation 文本替换 我们可以通过插入占位符的方式,使用新的字词替换已有幻灯片里的文字. 本文将详细描述如何使用Spire.Presentation 来替换Prsentation ...

  9. 利用过滤器Filter和特性Attribute实现对Web API返回结果的封装和统一异常处理

    在我们开发Web API应用的时候,我们可以借鉴ABP框架的过滤器Filter和特性Attribute的应用,实现对Web API返回结果的封装和统一异常处理,本篇随笔介绍利用AuthorizeAtt ...

随机推荐

  1. 安装VM虚拟机提示 尝试创建目录 C:\Public\documents\SharedVirtual Machines 时发生错误解决方法

    把Windows Defender安全中心的“受控制文件夹的访问”给关闭了,然后就可以顺利安装上了. 作者:耑新新,发布于  博客园 转载请注明出处,欢迎邮件交流:zhuanxinxin@foxmai ...

  2. C/C++经典面试题

    1.指向数组的指针 和 指向数组首元素的指针 2018-03-07 昨天在牛客上看到这么一道C语言面试题,挺经典的,特来分享给大家. 程序如下,问输出结果 #include <stdio.h&g ...

  3. 第六届CCF软件能力认证

    1.数位之和 问题描述 给定一个十进制整数n,输出n的各位数字之和. 输入格式 输入一个整数n. 输出格式 输出一个整数,表示答案. 样例输入 20151220 样例输出 13 样例说明 201512 ...

  4. day1作业:编写登录窗口一个文件实现

    思路: 1.参考模型,这个作业我参考了linux的登录认证流程以及结合网上银行支付宝等锁定规则: 1)认证流程参考的是Linux的登录:当你输入完用户名密码后再验证用户名是否存在用户是否被锁定,然后在 ...

  5. jquery图片延迟加载方案解决图片太多加载缓慢问题

    当在做一个图片展示站的时候,一个页面加载的图片过多会,如果服务器的带宽跟不上,明显会感觉到页面很卡,严重的浏览器也会崩溃,所以我推荐采用即看即所得的模式,当滚动到下一屏时才进行加载图片. 注意:即便如 ...

  6. 成功实施的APS项目故事分享---我们数据治理的心路历程

    一.故事背景 A企业是易普优APS重要客户之一,是某行业的龙头企业:APS项目历时7个月顺利上线,十个月验收!通过易普优APS的顺利实施,建成了集团的精益计划管控运营平台,树立计划的权威与指挥棒作用, ...

  7. Bechmarksql

    使用方法 1.配置JDK环境 JDK最好是1.5以上的版本 JAVA_HOME=/usr/java/jdk1.6.0_22 PATH=$PATH:$JAVA_HOME/bin 2.准备工作 把要测试的 ...

  8. 1. python 类型和运算

    类型和运算 (Types and Operations) Introducing Python Object Types 在非正式的意义上, 在 Python 中, 我们用一些东西做事情. " ...

  9. 洛谷——P2083 找人

    P2083 找人 题目背景 无 题目描述 小明要到他的同学家玩,可他只知道他住在某一单元,却不知住在哪个房间.那个单元有N层(1,2……N),每层有M(1,2……M)个房间. 小明会从第一层的某个房间 ...

  10. Servlet的基本架构

    Servlet的基本架构: package test; import java.io.IOException; import javax.servlet.ServletException; impor ...