手把手教你用 CKEDITOR (2): 初步安装与使用
下一期的文章已经成功获取了CKEditor软件包, 本次文章将向大家介绍它的基本操作方法。
CkEditor的操作极为简便, 只需完成几个基本操作流程即可实现功能。
- 1、为了导入ckeditor的JavaScript文件和CSS样式表文件到你的HTML文档中。
- 2、在你计划使用编辑器的位置上添加一个HTML文本输入框组件。
- 3、通过在HTML文档的document ready事件中调用CKEditor.replace()方法来初始化编辑器。
让我们一步一步来做吧!
初始化
第一步,在解压后的目录中创建一个HTML文件,并将其命名为ckeditor_sample.html

2、编辑这个文件,输入以下代码:
<html>
<head></head>
<body>
<div>
<textarea type="text" id="description" name="description"></textarea>
</div>
<script src="./ckeditor/ckeditor.js" type="text/javascript"></script>
<script>
$(document).ready(function () {
CKEDITOR.replace('description', {
});
});
</script>
</body>
</html>
AI写代码
从这里可以看出,在文档中我们完成了三项操作:
- 通过添加元素为文档引入了一个文本域;
- 使用成功导入了ckeditor所需的JavaScript文件;
- 在document.addEventListener('ready')事件中调用CKEDITOR.replace方法,并将' description'文本域指定为替换目标。需要注意的是,在此过程中所使用的描述字段的id必须与之前定义的
现在,用浏览器打开这个ckeditor_sample.html看一下什么效果吧:

有些令人失望的是,在屏幕上并没有显示出现我们所期望的画面。该怎么办呢?请按住键盘上的F12键并执行快捷操作以调出开发者工具查看具体情况。

Chrome软件具备高度强大的调试功能,并且囊括了所有必要的前端开发工具。姜哥高亮的那一栏中有丰富的选项设置,在这个区域中可以方便了解文档中的元素层级结构。我们的操作目标是:点击第二个选项卡窗口(其中一个是控制台窗口),观察是否有日志信息输出

果然报错了:
Uncaught ReferenceError: $ is not defined
原来如此,“$”符号是专属于jQuery的一个独特标识符。
不料我们竟然忽略了 jQuery 这个重要的库的存在。
难怪出错了。
别担心。
为了方便大家使用 jQuery ,我特意为大家准备了一个完整的 jQuery 包。
点击下载吧。
下载回去以后,
解压缩出来,
放到我们的开发目录中,
类似这个样子:

随后在HTML文档中导入JavaScript库jQuery 2.1.4_min.js,并将其配置为类型text/javascript。
<html>
<head></head>
<body>
<div>
<textarea type="text" id="description" name="description"></textarea>
</div>
<script src="./ckeditor/ckeditor.js" type="text/javascript"></script>
<script src="./jQuery-2.1.4.min.js" type="text/javascript"></script>
<script>
$(document).ready(function () {
CKEDITOR.replace('description', {
});
});
</script>
</body>
</html>
AI写代码
再次保存,运行吧~

好赞的画面!运行起来了!
取值
一旦启动了程序,如何才能获取到这个编辑器中的值呢?
很简单,只需一行代码即可:
var data = CKEDITOR.instances.你的实例名称.getData();
试试看,在原有的textarea控件基础上再加上一个button。我们打算点击此按钮以获取数据。
<div>
<br/>
<input id="get_data" type="button" value="获取CKEDITOR的值">
</div>
AI写代码
为了在原始document.ready中实现按钮点击事件的处理, 我们可以绑定一个函数
$("#get_data").click(function(){
var data = CKEDITOR.instances.description.getData(); //description这个和上午replace函数中一致
alert(data); //用alert窗口显示data的内容
});
AI写代码
在存储完成后执行操作,在输入一些内容的基础上,配置一些突出显示和样式设置。接着点击我们新增的操作按钮,观察结果如何。


效果还是比较杠杆的!
赋值
赋值就更加简单了,有两种方法,一种是直接在textarea中填入初始值:
<textarea type="text" id="description" name="description">我一开始就在噢</textarea>
AI写代码

这种适合初始化放进去。
另一种是使用setData方法,与上面取值类似,我们也放一个button:
<input id="set_data" type="button" value="填充CKEDITOR的值">
AI写代码
在document.ready中,写一个监控这个按钮点击的函数:
$("#set_data").click(function(){
var html = "<p>我是姜哥</p> <h2>我爱Django</h2>"; //要放进ckeditor的内容
var data = CKEDITOR.instances.description.setData(html); //description这个和上午replace函数中一致
});
AI写代码
保存之后,运行看:


挺不错的!我们现在已经掌握了CKEDITOR的基础操作。
作为参考的整体的ckeditor_sample.html文件,在此提供统一打包下载
<html>
<head></head>
<body>
<div>
<textarea type="text" id="description" name="description">我一开始就在噢</textarea>
</div>
<div>
<br/>
<input id="get_data" type="button" value="获取CKEDITOR的值"> | <input id="set_data" type="button" value="填充CKEDITOR的值">
</div>
<script src="./ckeditor/ckeditor.js" type="text/javascript"></script>
<script src="./jQuery-2.1.4.min.js" type="text/javascript"></script>
<script>
$(document).ready(function () {
CKEDITOR.replace('description', {
});
$("#get_data").click(function(){
var data = CKEDITOR.instances.description.getData(); //description这个和上午replace函数中一致
alert(data); //用alert窗口显示data的内容
});
$("#set_data").click(function(){
var html = "<p>我是姜哥</p> <h2>我爱Django</h2>";
var data = CKEDITOR.instances.description.setData(html); //description这个和上午replace函数中一致
});
});
</script>
</body>
</html>
AI写代码
——————
姜哥的邮箱: djangoworker@163.com
姜哥的微信:

——————
