判断页面是否加载完毕js,并初始化fckeditor的内容
一、IE5.5以上可用,判断页面加载完毕
var timer ;
function checkload() {
if (document.readyState == "complete") {
clearInterval(timer);
var fckobj = FCKeditorAPI.GetInstance("contest");
alert(fckobj);
fckobj.EditorDocument.getElementById("but").value = "fuck";
} else{
timer = setInterval("checkload()", 100);
}
}
checkload();
二、for Mozilla 判断文档内容加载完毕
document.addEventListener("DOMContentLoaded",
function(){
alert("firefox DOM加载完毕!");
var fckobj = FCKeditorAPI.GetInstance("contest");
fckobj.EditorDocument.getElementById("but2").value = "shit";
}, null);
三、如果上面的不好用,给个通用的,这个函数在完全加载完fckeditor后,自动调用,有什么对fckeditor操作的内容,就可以写在里面了!
function FCKeditor_OnComplete(oFCKeditor) {
var fckobj = FCKeditorAPI.GetInstance("contest");
fckobj.EditorDocument.getElementById("but1").value = "fuck";
}
四、为fckeditor中的控件添加内容
<script type="text/javascript">
var oFCKeditor = new FCKeditor('contest', true) ;
oFCKeditor.BasePath = '../../fckeditor/';
oFCKeditor.ToolbarSet = 'Default';
oFCKeditor.Width = '740px';
oFCKeditor.Height = '400px';
oFCKeditor.Value = "<input type=button id=but1>";
//加载模板0
oFCKeditor.Create();
function FCKeditor_OnComplete(oFCKeditor) {
var fckobj = FCKeditorAPI.GetInstance("contest");
fckobj.EditorDocument.getElementById("but1").value = "fuck";
}
</script>
五、在外部调用fckeditor的控件操作
获取fckeditor对象有两种方法
1、var fckobj = FCKeditorAPI.GetInstance("contest");
2、var fckobj2 = FCKeditorAPI.GetInstanceObject("contest");
以上两种都可以创建一个fckeditor对象
获取可操作的控件对象,传入的字符串,在fckconfig.js中的ToolbarSets里
var comm = fckobj2.Commands.GetCommand("Templates")
执行操作
comm.execute();
获取文本域的html内容
fckobj2.GetHTML();
六、异步加载模板
function getHTML(o) {
var r = "";
for (var i = 0; i < o.childNodes.length; i++)
r += o.childNodes[i].nodeValue;
return r;
}
//Index:要加载的模板的索引号,从0开始
//url:模板xml的路径,相对当前页面
//使用ajax加载xml模板文件,防止google浏览器不支持当前通用的xml加载的方法从而不能在
function ShowBo__LoadTemplates(Index, url) {
url += "?ts=" + new Date().toString();
var o;
if (window.XMLHttpRequest)
o = new XMLHttpRequest();
else if (window.ActiveXObject)
o = new ActiveXObject("microsoft.xmlhttp");
else {
alert("浏览器不支持当前流行的ajax!");
return "";
}
if (o) {
//同步
o.open('get', url, false);
o.send(null)
var dom = o.responseXML;
//获取模板html
var tmps = dom.getElementsByTagName("Html");
//没有模板或者路径出错时则返回空
if (tmps.length == 0)
return "";
//索引号大于模板数量则默认第一个模板
if (Index >= tmps.length)
Index = 0;
return document.all ? tmps[Index].firstChild.nodeValue : getHTML(tmps[Index]);
}
}
//加载模板1====================指定配置文件目录
//var tmpHtml = ShowBo__LoadTemplates(1, 'fcktemplates.xml');
七、编辑内容提交问题
在fckeditor编辑完之后,我们有两种情况要提交:一、是再提交到另一个页面;二、是提交到服务器。
提交服务器我们会把内容添加到数据库,这个可以,但是从数据库取出内容在页面显示,会报“未结束的.....”提示,这是因为你保存的数据有很多回车,导致内容不连贯。
为了解决这个问题,只需要将内容的全部空白字符替换掉再使用。
java代码:
request.getParameter("record").replace("\r\n", "");
javascript代码:
1、先在编辑页面用使用url传递编辑内容,然后在参数的传递上经过一下处理
FCKeditorAPI.GetInstance("desofimage").GetHTML()
2、在显示页去掉空白字符,这里用的el表达式
"${param.desofimages}".replace(/^\s+|\s+$/g, "")
分享到:
相关推荐
### FCKeditor开发手册知识点概览 #### 一、FCKeditor简介与下载 - **FCKeditor**是一款广泛使用的富文本编辑器,它能够帮助开发者轻松地在网页上实现强大的文本编辑功能。 - **下载地址**: 官方提供了一系列资源,...
2. **FCKeditor内置日志**: FCKeditor有内置的日志系统,可以通过开启日志记录来查看编辑器内部的操作和错误。这需要在配置中启用`FCKConfig.Debug`选项。 3. **查看源代码**: 对于自定义功能或插件的开发,查看...
由于其易用性和灵活性,FCKeditor在Web开发领域有着广泛的使用。 2. **功能特性** - **多语言支持**:FCKeditor支持多种语言,包括中文,便于不同地区用户的使用。 - **丰富的编辑功能**:提供字体、字号选择,...
- **撤销/重做**:提供了常见的编辑操作历史记录,方便用户进行错误修正。 **自定义与扩展** FCKeditor还允许开发者进行自定义和扩展,以满足特定需求: - **语言支持**:默认支持多种语言,可以通过修改语言文件...
包括fckeditor-java-core-2.4.1.jar(FCKeditor核心)、commons-fileupload-1.2.1.jar(文件上传)、commons-io-1.4.jar(文件I/O操作)、slf4j-api-1.5.6.jar和slf4j-simple-1.5.6.jar(日志记录)。 2. 在Web应用...
3. **监控与审计**:实验过程中,应记录所有操作,以便于后续分析和学习。 #### 六、总结 通过对FCKeditor漏洞实验环境的搭建与实践,我们可以更深入地理解其工作原理和潜在的安全风险,这对于提高网站系统的安全...
- 考虑到FCKeditor 2.3的时代背景,应确保修改后的编辑器在多种浏览器和操作系统上都能正常工作。 通过以上步骤,我们可以有效地对FCKeditor 2.3的源码进行修改,使其更好地适应项目需求,同时也能提升开发者的...
首先,FCKeditor的核心特性包括支持富文本编辑,允许用户在网页上直接进行文字格式化、插入图片、链接、表格等操作,极大地提高了网页内容创作的效率。用户可以通过拖放、复制粘贴等方式轻松处理内容,与传统的纯...
这意味着在使用FCKeditor2.6进行Web开发时,你需要将此JAR文件加入到项目的类路径中,以确保所有必要的功能可以正常工作。 【标签】中的"fckeditor2.6JAR"进一步强调了这是针对FCKeditor2.6版本的Java库,它可能...
综上所述,这个资源包提供了一个完整的FCKeditor在Java环境下的集成方案,包括从基础理论、源代码到实践操作的全方位学习材料。通过这些内容,开发者可以了解到如何在Java Web项目中使用FCKeditor作为富文本编辑器,...
5. **撤销/重做**:提供编辑历史记录,方便操作。 6. **拼写检查**:内置或自定义的拼写检查插件。 7. **多语言支持**:可切换不同语言界面。 **五、扩展与自定义** FCKeditor允许开发者根据需求进行扩展和自定义:...
在使用FCKeditor时,SLF4j可以用于记录编辑器的运行日志,帮助开发者追踪和诊断问题。将SLF4j 1.5.2版本与FCKeditor结合,可以更好地监控编辑器的运行状态,为调试和维护提供便利。 集成教程通常会包含以下几个关键...
集成FCKEditor需要一些额外的库文件,比如`commons-fileupload-1.2.1.jar`用于处理文件上传,`commons-io-1.3.2.jar`提供IO操作支持,`log4j-1.2.15.jar`用于日志记录,`slf4j-api-1.5.8.jar`和`slf4j-log4j12-...
6. **跨平台**:FCKeditor可在多种操作系统和浏览器上运行,如Windows、Linux、Mac以及Firefox、Chrome、Safari、IE等主流浏览器。 **二、使用方法** 1. **安装与引入**:下载FCKeditor压缩包,解压后将相关文件...
8. **撤销/重做**:提供历史记录,方便用户进行误操作的恢复。 为了满足不同需求,FCKEditor支持自定义工具栏,你可以根据项目需要选择显示哪些功能按钮。此外,FCKeditor还提供了API,可以通过JavaScript控制编辑...
FCKeditor 是一个开源的富文本编辑器,广泛应用于Web开发中,允许用户在网页上进行类似Word的文本编辑操作。这个"2.6.4.1 demo"版本是FCKeditor的一个演示版本,展示了其核心功能和使用方式。 1. **富文本编辑器...
在Access中,如果你使用ADO(ActiveX Data Objects)来连接数据库,可以通过创建一个记录集对象,然后设置参数值来执行SQL命令,这样即使数据中有单引号,也不会影响到SQL语句的结构。 以下是一个简单的示例,展示...
在开发过程中,FCKEditor常被用于后台管理系统或内容管理系统,以方便非技术用户编辑网站内容。 FCKEditor 2.6.4 版本是其发展中的一个重要里程碑,它包含了丰富的功能和改进。配置FCKEditor是为了满足特定项目的...
这些库文件提供了日志记录、FCKeditor核心功能以及相关的文档支持。 **6. Struts2的文件上传配置** 在`struts.xml`文件中,你还需要配置Struts2的`fileUpload`拦截器来指定允许上传的文件类型和大小。例如: ```...