Ueditor中代码的高亮和背景在前端页面的实现
首先废话就不多说,这个富文本编辑器的下载和js等基本文件的导入略。
我的最终目标是这样的,我们在页面中的富文本框中输入代码,希望它能够被后台接受、存入数据库,当通过服务器将这些代码再一次显示在前台的页面上的时候,我们希望所呈现的是如下的情况:

就是说需要对代码的背景和高亮的部分的样式也进行保存。我的解决过程是这样的(假设在demo.html中进行输入,在demo.php中进行处理和呈现):
1. 首先在网上查找相关信息,发现需要第三方插件,而这第三方插件就在我们的ueditor的下载包中,ueditor/third-party中便是。那么需要在demo.html中引入的就是
<script type="text/javascript" src="./Public/editor/third-party/SyntaxHighlighter/shCore.js"></script>
<link rel="stylesheet" type="text/css" href="./Public/editor/third-party/SyntaxHighlighter/shCoreDefault.css">
<script>SyntaxHighlighter.all();</script>
路径是我当前使用的路径,换成自己的就好。
另外有人说需要在editor下的ueditor.config.js中添加
,highlightJsUrl:URL + "third-party/SyntaxHighlighter/shCore.js"
,highlightCssUrl:URL + "third-party/SyntaxHighlighter/shCoreDefault.css"
本人使用1.4.3.3版本,发现加入不加入这个配置都可以。
2.这个时候我感觉可以得到我想要的效果了,于是在demo.html中使用富文本,在其中输入了一行js代码,提交到demo.php中。直接输出,结果代码和背景的样式并没有呈现出来。此时的我已经很烦躁,查了半天网上的资料都没有找到想要的结果,因为几乎所有的信息都是一模一样的:出自一个人的手笔。。。。。最后我F12,发现最后在前台这些代码文字呈现的html为:
<pre class="brush:js;toolbar:false">var name = 'jyy';
var age = 26;
function say(){
console.log('my name is:' + name + ' and age:' + age);
}</pre>
发现有很奇特的class,知道了可能我少了一道工序。没错,就是editor中的uparse。当时急于快速的搭建完成,于是没有仔细的看文档,知道了原来这些样式是需要uparse来进行解析的,这样才能在前台显示出应有的样式,uparse文件就是ueditor中的ueditor.parse.js,于是在demo.php中是这样的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="./Public/Admin/js/jquery.js"></script>
<script src = './Public/editor/ueditor.parse.js'></script>
</head>
<body>
<div id="con">
<?php
echo $_POST['content'];
?>
</div>
<script>
$(function(){
uParse('#con',{rootPath:'./Public/editor'});
});
</script>
</body>
</html>
注意在引入相应的js文件后,需要使用uParse()方法,参数1是代码文字的如元素的选择器,参数2是editor相对于demo.php的路径。
3、最后,大功告成。

Ueditor中代码的高亮和背景在前端页面的实现的更多相关文章
- 在java中构建json对象,返回给前端页面
// 给客户端返回一个json对象 StringBuilder sb = new StringBuilder("{"); sb.append("\"name\& ...
- Android 代码编辑器中实现代码语法高亮
想写一款Android手机上的代码编辑器,实现类似c4droid中代码语法高亮 通过Android中的控件WebView中嵌入html网页,html引入CodeMirror这个第三方库就可以了,其实就 ...
- C# 获取Word文本高亮和背景(附vb.net代码)
Word中的文本高亮和背景是通过不同方法来设置的.文本高亮(Text Highlight Color)是通过[字体]中的快速工具栏设置:文本背景(Text Background/Shading)是通过 ...
- ueditor使用代码高亮的方法
最近发现ueditor支持代码高亮,但是页面上并没有起效果,于是网上找了下,发现还需做如下修改: 1.页面引用以下资源文件(均位于ueditor目录中): <script type=" ...
- android中在java代码中设置Button按钮的背景颜色
android中在java代码中设置Button按钮的背景颜色 1.设置背景图片,图片来源于drawable: flightInfoPanel.setBackgroundDrawable(getRes ...
- 解决ueditor中没法动态配置imageurlprefix的方法
[建议使用右边文章中的方法,本篇文章没有真正的解决问题](新)解决php版本ueditor中动态配置图片URL前缀(imageurlprefix)的方法 修改背景,由于后台图片是上传到挂载的静态资源磁 ...
- CUDA代码的高亮设置
以下基于"WIN7(64位)+Visual Studio 2010+CUDA7.5". 语法高亮除了看起来舒服之外,还可以使用F11寻找函数.变量定义,输入函数的时候也会有相应的提 ...
- 从web编辑器 UEditor 中单独提取图片上传,包含多图片单图片上传以及在线涂鸦功能
UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码.(抄的...) UEditor是非常好用的富文 ...
- VS2015 安装mvc4安装包以及vs2010 sp1后导致Razor语法失效代码不高亮(能正常运行)/视图页面无法智能提示(.cshtml)解决办法
VS2015默认asp.net mvc 版本为5.0以上,默认不支持创建5.0以下的版本.所以想要使用mvc 4.0只能单独安装.在网上搜了几篇教程后在微软官网下载了Visual Studio 201 ...
随机推荐
- android AlertDialog常见使用
android AlertDialog常见使用 简单提示框: AlertDialog.Builder alertDialog = new AlertDialog.Builder(this); aler ...
- CodeForces 429B【dp】
题意: 在一个n*m的矩阵中有两只虫子,一只从左上角向右下角移动,另外一只从左下角向右上角移动. 要求: 1.第一只虫子每次只能向左或者向下移动一格,另外一只只能向上或者向右移动一格. 2.两只虫子的 ...
- MySQL事务及Spring事务管理
事务,是在数据库中用于保证数据正确性的一种机制,涉及到很多概念以及不同的情况,这里做一个总结 相关概念 事务四特性(ACID) 原子性(Atomicity,或称不可分割性):要么全部完成或者全部不完成 ...
- 转 asterisk拨号规则
asterisk拨号规则 一.前言 本文档以asterisk-1.4.32为基础写作而成,可能和其他版本有些区别. 二.Asterisk dialplan 基本结构 Asterisk dial ...
- Java实现敏感词过滤代码
原文:http://www.open-open.com/code/view/1445762764148 import java.io.BufferedReader; import java.io.Fi ...
- Windows平台下Git(gitblit)服务器搭建
环境:Windows 10 专业版32位 因为公司服务器上已经搭了Visual SVN等,只好在Windows上搭个Git Server给大家用. 参考链接:http://www.cnblogs.co ...
- 【APUE】一个fork的面试题及字符设备、块设备的区别
具体内容见:http://coolshell.cn/articles/7965.html 字符设备.块设备主要区别是:在对字符设备发出读/写请求时,实际的硬件I/O一般就紧接着发生了,而块设备则不然, ...
- 杭电1232畅通project
畅通project Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total ...
- libevent API 介绍
基本应用场景也是使用 libevnet 的基本流程,下面来考虑一个最简单的场景,使用livevent 设置定时器,应用程序只需要执行下面几个简单的步骤即可. 1)首先初始化 libevent 库,并保 ...
- jsoncpp的api简要说明
1 jsoncpp的api简要说明 1,解析(json字符串转为对象) std::string strDataJson; Json::Reader JReader; Json::Value JObj ...