CKEditor/FCKEditor 使用FCKeditor 2.6.5 快速使用教程(含插入图片)

其开源协议是基于 GPL, LGPL 和 MPL 的。官方网站:http://ckeditor.com/

一般来说,我们在编辑内容时,先是读入到 textarea,再将 textarea 的内容赋给编辑器。因为直接把内容作为字符串给编辑器的 Value 属性赋值使用的是 JavaScript 代码,要让 JS 代码不受内容中双引号、换行等的干扰,只有先读入到 textarea 最方便。

使用 FCKeditor 2.6.5


代码如下:

<div><textarea id="fckcontent" name="content">cftea</textarea></div>
<script type="text/javascript" src="fckeditor/fckeditor.js"></script>
<script type="text/javascript">
<!--
var oFCKeditor = new FCKeditor("fckcontent");
oFCKeditor.BasePath = "fckeditor/"; // fckeditor 文件夹位置。
oFCKeditor.Create();
//-->
</script>

本来应该用 display:none 将 textarea 隐藏起来,不过为了查看效果,这里不隐藏。

这样编辑器就自动与 fckcontent 关联起来了,打开网页时 FCKeditor 自动读取 textarea 的内容,提交时又自动将其内容(自动为 XHTML)赋给 textarea。

注意,我们 textarea 的 id 和 name 值不一样,为什么呢?

这里应该是这个版本不太完善的地方,如果我们把 textarea 的 id 和 name 值设置为一样,那么 FCKeditor 文本区的 name 值也是 content,在服务器端 Request.Form("content").Count 就会有两个,我们服务器端取值就稍稍有点不方便,得用 Request.Form("content")(0)。如果我们将 id 设为 fckcontent,那么 FCKeditor 文本区的 name 就是 fckcontent,与 textarea 不同名。

设置编辑器宽高

var oFCKeditor = new FCKeditor("fckcontent", 500, 300);



代码如下:

var oFCKeditor = new FCKeditor("fckcontent");
oFCKeditor.Width = 500;
oFCKeditor.Height = 300;

设置工具条

var oFCKeditor = new FCKeditor("fckcontent", 500, 300, "Basic");
注意第四个参数,其可选值有 Basic、Default,注意大小写不可搞错,分别表示基本工具条、默认工具条(全部按钮)。

设置初始值、设置值、取值

设置初始值

实际上设置初始值很少用,因为一般都是与 textarea 关联的,故只是简单列出来一下,不深究。说明一下,如果关联的 textarea 存在,则赋初始值是没有用的。

var oFCKeditor = new FCKeditor("fckcontent2", 500, 300, "Default", "我们");



代码如下:

var oFCKeditor = new FCKeditor("fckcontent2", 500, 300, "Default");
oFCKeditor.BasePath = "fckeditor/";
oFCKeditor.Value = "cftea"; // 必须在 Create 之前
oFCKeditor.Create();

设置值

若要演示此示例,最好是放在按钮的事件处理程序中,目的是有些延迟,否则会说 FCKeditorAPI 未定义。


代码如下:

var oEditor = FCKeditorAPI.GetInstance("fckcontent");
oEditor.SetHTML("我们");

取值

若要演示此示例,最好是放在按钮的事件处理程序中,目的是有些延迟,否则会说 FCKeditorAPI 未定义。


代码如下:

var oEditor = FCKeditorAPI.GetInstance("fckcontent");
alert(oEditor.GetXHTML()); // 还有个类似方法是 GetHTML,但不推荐用 GetHTML。

您这样做很危险:


代码如下:

var oEditor = FCKeditorAPI.GetInstance("fckcontent");
oEditor.SetHTML("我们");
alert(oEditor.GetXHTML()); // 这里的值并不一定是上一句赋的值。因为他们太近了,值还没来得及赋,就已经 alert 了。

插入图片

若要演示此示例,最好是放在按钮的事件处理程序中,目的是有些延迟,否则会说 FCKeditorAPI 未定义。

FCKeditorAPI.GetInstance("fckcontent").InsertHtml("<img src...>");

(0)

相关推荐

  • CKEditor/FCKEditor 使用FCKeditor 2.6.5 快速使用教程(含插入图片)

    其开源协议是基于 GPL, LGPL 和 MPL 的.官方网站:http://ckeditor.com/ 一般来说,我们在编辑内容时,先是读入到 textarea,再将 textarea 的内容赋给编辑器.因为直接把内容作为字符串给编辑器的 Value 属性赋值使用的是 JavaScript 代码,要让 JS 代码不受内容中双引号.换行等的干扰,只有先读入到 textarea 最方便. 使用 FCKeditor 2.6.5 复制代码 代码如下: <div><textarea id=&qu

  • CKEditor/FCKEditor 使用 CKeditor 3.0.1 快速使用教程(含插入图片)

    因为直接把内容作为字符串给编辑器的 Value 属性赋值使用的是 JavaScript 代码,要让 JS 代码不受内容中双引号.换行等的干扰,只有先读入到 textarea 最方便. 使用 CKeditor 3.0.1 复制代码 代码如下: <textarea cols="90" rows="10" id="content" name="content">cftea</textarea> <scr

  • jQuery Easyui快速入门教程

    1.什么是JQuery EasyUI jQuery EasyUI是一组基于JQuery的UI插件集合,而JQueryEasyUI的目标就是帮助开发者更轻松的打造出功能丰富并且美观的UI界面.开发者不需要编写复杂的JavaScript,也不需要对css样式有深入的了解,开发者需要了解的只是一些简单的html标签. 2.学习jQuery EasyUI的条件 因为JQueryEasyUI是基于jQuery的UI库,所以,必须需要JQuery课程的基础. 3.JQuery EasyUI的特点 基于JQu

  • OpenStack云计算快速入门教程(1)之OpenStack及其构成简介

    该教程基于Ubuntu12.04版,它将帮助读者建立起一份OpenStack最小化安装.我是五岳之巅,翻译中多采用意译法,所以个别词与原版有出入,请大家谅解.我不是英语专业,我觉着搞技术最重要的就是理解,而不是四级和考研中那烦人的英译汉,所以我的目标是忠于原意.通俗表达,Over.英文原文在这里(http://docs.openstack.org/es@***/openstack-compute/starter/content/ ,请将ex@***中的@去掉,CU屏蔽的F词),下面步入正题: 第

  • ReactJs快速入门教程(精华版)

    现在最热门的前端框架有AngularJS.React.Bootstrap等.自从接触了ReactJS,ReactJs的虚拟DOM(Virtual DOM)和组件化的开发深深的吸引了我,下面来跟我一起领略ReactJs的风采吧~~ 文章有点长,耐心读完,你会有很大收获哦~   一.ReactJS简介 React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设 Instagram 的网站.做出来以后,发现这套东西

  • Yii2框架制作RESTful风格的API快速入门教程

    先给大家说下什么是REST restful REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移. 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一. 他在论文中提到:"我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强.性能好.适宜通信的架构.REST指的是一组架构约束条件和原则." 如

  • Vue.js快速入门教程

    像AngularJS这种前端框架可以让我们非常方便地开发出强大的单页应用,然而有时候Angular这种大型框架对于我们的项目来说过于庞大,很多功能不一定会用到.这时候我们就需要评估一下使用它的必要性了.如果我们仅仅需要在一个简单的网页里添加屈指可数的几个功能,那么用Angular就太麻烦了,必要的安装.配置.编写路由和设计控制器等等工作显得过于繁琐. 这时候我们需要一个更加轻量级的解决方案.Vue.js就是一个不错的选择.Vue.js是一个专注于视图模型(ViewModal)的框架.视图模型是U

  • Vue.js 60分钟快速入门教程

    vuejs是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的.相比于Angular.js,Vue.js提供了更加简洁.更易于理解的API,使得我们能够快速地上手并使用Vue.js. 如果你之前已经习惯了用jQuery操作DOM,学习Vue.js时请先抛开手动操作DOM的思维,因为Vue.js是数据驱动的,你无需手动操作DOM.它通过一些特殊的HTML语法,将DOM和数据绑定起来.一旦你创建了绑定,DOM将和数据保持同步,每当变更了数据,DOM也会相应地更新. 当

  • Java的JNI快速入门教程(推荐)

    1. JNI简介 JNI是Java Native Interface的英文缩写,意为Java本地接口. 问题来源:由于Java编写底层的应用较难实现,在一些实时性要求非常高的部分Java较难胜任(实时性要求高的地方目前还未涉及,实时性这类话题有待考究). 解决办法:Java使用JNI可以调用现有的本地库(C/C++开发任何和系统相关的程序和类库),极大地灵活Java的开发. 2. JNI快速学习教程 2.1 问题: 使用JNI写一段代码,实现string_Java_Test_helloworld

  • 快速解决android webview https图片不显示的问题

    Android webview 从Lollipop(5.0)开始webview默认不允许混合模式,https当中不能加载http资源,需要设置开启. 解决方法: if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { webview.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); } 以上这篇快速解决android webview

随机推荐