ckeditor_学习(1) 基本使用
ckeditor 是一款强大的web编辑器。工作需要用到记录学习和使用过程,版本是ckeditor4。
1.下载ckeditor的安装包,建议下载标准版的。
j将ckeditor.js 引入页面,调用CKEDITOR。replace() 方法初始编辑器
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>例子</title>
<!--正确的js路径-->
<script src="../ckeditor.js"/>
</meta></head>
<body>
<form>
<textarea name="editor1" id="editor1" rows="10" cols="80">
文章正文
</textarea>
<script>
// 替换<textarea id="editor1"> with a CKEditor
// 直接替换
CKEDITOR.replace( 'editor1' );
</script>
</form>
</body>
</html>
建议直接引用现在的包中的js,因为需要config.js 的依赖。
可以看到编辑器已经初始化好了。
2.编辑器的基本展现形式分为两种,一种是经典的样式,一中的行内的样式
2.1 经典的样式
调用CKEDITOR.replace() 方法初始编辑器
2.2 行内的样式
是通过html5 中的contenteditable 属性来实现的
html代码:
<div id="editor1" contenteditable="true">
<h1>行内编辑器!</h1>
<p>这是一个普通段落</p>
</div>
js调用代码:
<script>
// Turn off automatic editor creation first.
CKEDITOR.disableAutoInline = true;
CKEDITOR.inline( 'editor1' );
</script>
这是点击段落文,就能够进入文本编辑状态了。
3.ckeditor的三种配置方式
1.在页面中配置
这是最好的一种配置方式,不用依赖于外部文件维护方便。
CKEDITOR.editorConfig = function( config ) {
config.language = 'fr';
config.uiColor = '#AADC6E';
};
2.使用config.js
在ckeditor.js 的文件目录放置config.js 文件,为CKEDITOR编写 editorConfig 方法
CKEDITOR.editorConfig = function( config ) {
config.language = 'fr';
config.uiColor = '#AADC6E';
};
3.自定义config.js
可以自定义一个config.js,同样为CKEDITOR编写 editorConfig 方法,格式和config.js 一样不过这样可以在项目制定的位置放置cofig文件。制定的文件目录是相对于ckeditor.js 的相对文件目录或者引用绝对路径
CKEDITOR.replace( 'editor1', {
customConfig: '/custom/ckeditor_config.js'
});
优先级顺序 2 < 3 < 1
4. 内容过滤(ACF,Advanced Content Filter)
可以对编辑器内容进行过滤,编辑器默认是打开过滤器的(出于安全考虑,方式xss攻击)<这是在客户端做过滤,如果服务器端能够做过滤就可以考虑不用再客户端做>
1. 关闭编辑器的内容过滤
config.allowedContent = true;
2.使用编辑器的内容过滤,但对例外的情况进行编辑,分为允许标签和内容,不允许的标签和内容
// Allow <dl>, <dt>, <dd>. config.extraAllowedContent = 'dl dt dd'; 用来定义例外被允许的标签 dl dt dd
// Disallow <a> element. The Link button will be removed from the toolbar. config.disallowedContent = 'a'; 用来定义不被允许的标签,这是会对工具栏中的按钮进行相应的关闭,如果有连接按钮将会被禁止。
5. 数据获取
ckeditor 对于获取数据很方便
var data = CKEDITOR.instances.editor1.getData(); // editor1 是编辑设置的id
编辑器内容的改变都会出发编辑器change事件,通过对编辑器事件进行监听可以完成自动保存的相关的功能。
editor.on( 'change', function( evt ) { // getData() returns CKEditor's HTML content. console.log( 'Total bytes: ' + evt.editor.getData().length ); });
6.插件和皮肤安装
可以通过ckeditor 网站的online-builder 很方便的安装插件和更换皮肤
1.插件安装
2.皮肤安装
ckeditor_学习(1) 基本使用的更多相关文章
- ckeditor_学习(2) 功能概览
这篇文章用来说明 ckeditor 的所有可配置的功能,分为终端用户配置和开发者配置 1.终端用户配置 用户接口 – 设置编辑器的UI和语言 Editor 尺寸设置 – 设置编辑器的尺寸 插入内容 – ...
- 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代
2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...
- Angular2学习笔记(1)
Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- 消息队列——RabbitMQ学习笔记
消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Unity3d学习 制作地形
这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- 菜鸟Python学习笔记第一天:关于一些函数库的使用
2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...
随机推荐
- Linux sar工具安装使用
使用sar Sar是后台进程sadc的前端显示工具,安装名为“sysstat”的包后,sadc就会自动从内核收集报告并保存. 安装sar [root@localhost ~]# yum insta ...
- 安装GDB-ImageWatch ,在QT中查看图像
GDB_ImageWatch是在Linux下基于QT编写图像处理程序的调试程序. 由于并非像ImageWatch一样由官方提供,而是在github上以代码的方式进行提供,我们在使用的时候需要自己编译, ...
- Ubuntu 16.04下vsftpd 安装配置实例
从https://www.linuxidc.com/Linux/2017-06/144807.htm转载 第一步:安装VSFTPD sudo apt-get install vsftpd 安装完成后启 ...
- .NET ActiveMQ类库
ActiveMQ .NET类库 ActiveMQ是一种开源的,实现了JMS规范的,面向消息(MOM)的中间件,为应用程序提供高效的.可扩展的.稳定的和安全的企业级消息通信. 0. 准备 使用Nuget ...
- Qt基础学习---滑动条之QSlider
Qt滑动条基本用法: //mydialog.h #ifndef MYDIALOG_H #define MYDIALOG_H #include <QDialog> class QLineEd ...
- Ubuntu 16.04上搭建CDH5.16.1集群
本文参考自:<Ubuntu16.04上搭建CDH5.14集群> 1.准备三台(CDH默认配置为三台)安装Ubuntu 16.04.4 LTS系统的服务器,假设ip地址分布为 192.168 ...
- 20175317 《Java程序设计》第三周学习总结
20175317 <Java程序设计>第三周学习总结 教材学习内容总结 第三周我学习了教材第四章的内容,了解了Java中的部分常用语句,学到了以下内容: 明白了什么是类,成员变量有哪些,什 ...
- HTML辅助方法
顾名思义,HTML辅助方法(HTML Helper)就是用来辅助产生HTML之用,在开发View的时候一定会面对许多HTML标签,处理这些HTML的工作非常繁琐,为了降低View的复杂度,可以使用HT ...
- HihoCoder - 1142 ,三分入门
先来说说三分的思想: 从三分法的名字中我们可以猜到,三分法是对于需要逼近的区间做三等分: 我们发现lm这个点比rm要低,那么我们要找的最小点一定在[left,rm]之间.如果最低点在[rm,right ...
- postman设置token关联参数,其他接口直接读取token变量
问题描述:有一个登录接口获取token,其他接口再次访问时都要带上token 解决方案: 步骤一:在登录接口访问后设置postman的环境变量,例如设置环境变量名:token,值为登录接口访问成功后, ...