Js FCKeditor的值获取和修改的代码小结
FCKeditor编辑器是一款广受欢迎的编辑器,被众多内容管理系统(CMS)所采纳。其免费、功能强大且易于扩展的特性赢得了用户的青睐。对于开发者而言,利用Javascript获取和设置FCKeditor的值变得非常简单。
获取编辑器中的HTML内容,可以通过以下方式轻松实现:
```javascript
function getEditorHTMLContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return oEditor.GetXHTML(true); // 获取编辑器中的HTML内容,是否按HTML格式取出取决于参数设置。
}
```
同样,要获取编辑器中的纯文本内容,可以这样做:
```javascript
function getEditorTextContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return oEditor.EditorDocument.bodynerText; // 获取编辑器中的文字内容。
}
```
设置编辑器中的内容也十分简便:
```javascript
function SetEditorContents(EditorName, ContentStr) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
oEditor.SetHTML(ContentStr); // 设置编辑器的内容。
}
```
值得一提的是,FCKeditorAPI是FCKeditor加载后注册的一个全局对象,它为我们提供了操作编辑器的各种方法。要获取当前页面的FCK编辑器实例,可以使用如下代码:
```javascript
var Editor = FCKeditorAPI.GetInstance('InstanceName'); // 获取当前页的FCK编辑器实例。
```
我们还可以从FCK编辑器的弹出窗口、框架页面的子框架或其他页面弹出窗口中获得相应的FCK编辑器实例。如从页面弹出窗口中获得父窗口的FCK编辑器实例:
```javascript
var Editor = opener.FCKeditorAPI.GetInstance('InstanceName'); // 从页面弹出窗口获得父窗口的FCK编辑器实例。
```
在进行内容获取和设置时,可以根据需要设置参数以满足特定需求,如是否按HTML格式取出内容,或以所见即所得的方式设置内容等。这些方法在“设置初始值”或“表单重置”等场景中尤为实用。利用Javascript与FCKeditor的API交互,可以轻松地管理和控制编辑器的内容。与文本对话的FCK编辑器:定制与灵活应用
在网页内容管理中,FCK编辑器作为一款功能丰富的在线文本编辑器,深受开发者喜爱。其定制的工具和灵活的应用方式使得它在各种场景下都能发挥出强大的功能。接下来,让我们一起如何与FCK编辑器进行交互,使其更好地服务于我们的需求。
二、FCK编辑器的命令调用
三、插件的添加与定制
FCK编辑器支持插件,这使得我们可以根据需要扩展编辑器的功能。例如,我们可以通过添加placeholder插件来支持多参数或单参数自定义标签的匹配,这在制作编辑模板时非常有用。要制作自己的插件,只需按照FCKeditor插件的制作规则制作,然后放置在/editor/plugins/下,再在fckeidtor.js中添加相应的配置即可。
四、工具栏的定制与显示
我们可以根据需求调整编辑器的工具栏。例如,可以通过修改fckconfig.js中的相关设置,让工具栏在一开始不出现,等到点击“展开工具栏”时才出现。这对于节省页面空间、提高用户体验非常有帮助。我们还可以设置自己的表情图标,包括表情图标的路径、文件名列表、每行显示的表情数以及弹出的模态窗口的宽和高。
五、文件上传管理
文件上传管理是FCK编辑器的一个重要功能。我们可以通过修改相关设置来实现自定义文件上传,并利用fckeidtor2.0的快速上传功能来提高上传效率。这对于管理网页内容、提高用户体验具有重要意义。
对于仅供内部使用或后台管理的编辑器,这个功能极为便利,因为它使用户能够直观地浏览并上传服务器上的文件。对于面向前台用户或如Blog等系统,存在潜在的安全隐患。出于安全考虑,我们通常将这些选项设置为false。
接下来,我们以ASP为例进行配置修改。进入/editor/filemanager/upload/asp/并打开config.asp文件,修改ConfigUserFilesPath设置,这是上传文件的总目录。如果你想为多个用户系统使用,可以根据用户信息进行更详细的目录设置。
在完成上传目录设置后,我们需要确保上传程序能够自动创建这些文件夹。如果不存在这些文件夹,上传将无法成功。我们需要根据上传路径的要求进行递归以生成目录。
原先的代码中,有一段是用于确定服务器目录的,我们需要在这个基础上进行改进。保留原有的部分代码来确定服务器路径,然后添加新的代码段来递归创建所需的文件夹。新的代码段会遍历上传路径的每个部分,并使用文件系统对象来检查每个目录是否存在,如果不存在则创建之。
这样的设置使得上传功能更加灵活和安全。用户可以直观地浏览并上传文件,而系统管理员则可以控制哪些用户能够上传哪些文件到哪些目录。通过递归创建目录,确保了上传的顺利进行。这样的设置对于单用户或多用户系统都是适用的,只需根据实际需求进行适当的调整即可。
暂且告一段落文件上传的修改工作。对于中文用户来说,存在一个棘手的问题需要解决。那就是在使用fckeditor进行文件上传时,默认是不允许更改文件名的,并且它并不支持中文文件名。这导致上传的文件变成像“.jpg”这样无法识别的文件名,而且还可能存在重复的文件名。尽管fckeditor会自动在重复的文件名后添加(1)来进行标识,但这样的处理方式并不符合我们日常的使用习惯。我们希望程序能够自动生成独一无二的文件名。
紧跟着狼蚁网站SEO优化的步伐,我们需要获取上传的文件名。代码中的 'Get the uploaded file name.' 部分是关键所在。sFileName = oUploader.File("NewFile").Name,这段代码中显示的就是文件名。我们要对其进行修改,需要一个生成文件名的函数来实现。这个函数可以生成一个独特的序号。
让我们来看看如何创建一个名为GetNewID的公共函数。这个函数首先声明了两个变量:ranNum和dtNow。然后利用randomize函数对dtNow进行初始化,使其等于当前时间。接着计算一个介于10000和之间的随机整数ranNum。函数的主体部分通过拼接年份、月份、日期、小时、分钟和秒来创建一个独特的序号,并在最后加上随机数以确保独一无二性。我们使用这个新生成的文件名替换原有的文件名。通过这种方式,上传的文件将被自动重命名为类似于“20050802122536365.jpg”这样的格式,这是一个由年月日时分秒以及三位随机数组合而成的文件名。
现在,每当有文件上传时,都会通过这个函数自动获取一个独一无二的文件名,确保了文件管理的有序性和便捷性。这样一来,用户无需担心因为文件名重复或者不支持中文而导致的上传问题,极大地提升了用户体验。现在我们可以顺利地进行下一步操作了,那就是将这段优化后的代码应用到我们的狼蚁网站中,以提升网站的SEO优化效果。让我们拭目以待,看看这个改进如何助力网站的进一步发展吧!
不要忘记在代码的最后添加一句 "cambrian.render('body')" ,以确保页面能够正确渲染并展示给用户。
编程语言
- Js FCKeditor的值获取和修改的代码小结
- js判断浏览器版本以及浏览器内核的方法
- asp.net开发微信公众平台之验证消息的真实性
- Vue2学习笔记之请求数据交互vue-resource
- Mac系统下搭建Nginx+php-fpm实例讲解
- AngularJS之ionic 框架下实现 Localstorage本地存储
- 微信公众号平台接口开发 菜单管理的实现
- 使用HtmlAgilityPack XPath 表达式抓取博客园数据的实
- 功能强大的PHP发邮件类
- .net 单点登录的设计与实践
- jQuery实现全选、反选和不选功能
- js断点调试心得分享(必看篇)
- eBay 打造基于 Apache Druid 的大数据实时监控系统
- javascript中call,apply,bind的用法对比分析
- CentOS 7 安装Percona Server+Mysql
- 简单实现jQuery轮播效果