最近在做组内的组件库,用到代码的高亮显示~

我查到的资料有syntaxhighlighter、highlight.js、prism.js

highlight.js官网   https://highlightjs.org/

syntaxhighlighter官网 http://alexgorbatchev.com/SyntaxHighlighter/

prism.js官网 http://prismjs.com/ 参考资料:http://c7sky.com/syntax-highlighting-with-prismjs.html#0-qzone-1-94908-d020d2d2a4e8d1a374a433f596ad1440

基本实现原理都是引入需要的JS文件和CSS样式,将要显示的代码封装在<pre><code></code></pre>标签中

syntaxhighlighter效果如图(shCoreDefault样式)

 <link rel="stylesheet" type="text/css" href="../node_modules/syntaxhighlighter_3.0.83/styles/shCoreDefault.css"/><pre class="brush: js;">var myCustomFn = function ShowFn() {Ext.Msg.alert('消息框', "你调用了客户端的JavaScript函数");}</pre><script src="../node_modules/syntaxhighlighter_3.0.83/scripts/shCore.js"></script><script src="../node_modules/syntaxhighlighter_3.0.83/scripts/shBrushJScript.js"></script><script src="../node_modules/syntaxhighlighter_3.0.83/scripts/shBrushXml.js"></script><script>SyntaxHighlighter.all();</script>

highlight.js效果如图(default样式)

    <link rel="stylesheet" href="../node_modules/highlight/lib/vendor/highlight.js/styles/default.css"/><script src="../node_modules/highlight/lib/vendor/highlight.js/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script><pre><code class="css">@font-face {font-family: Chunkfive; src: url('Chunkfive.otf');}body, .usertext {color: #F0F0F0; background: #600;font-family: Chunkfive, sans;}@import url(print.css);@media print {a[href^=http]::after {content: attr(href)}}</code></pre>

prism.js效果图

<link rel="stylesheet" href="../css/prism.css"/>
<pre class="language-html">  <code>&lt!DOCTYPE html&gt&lthtml lang="en"&gt&lthead&gt&ltmeta charset="UTF-8"&gt&lttitle&gt&lt/title&gt&lt/head&gt&ltbody&gt&ltp&gtkjfeiwjoiefj&lt/p&gt&lt/body&gt&lt/html&gt
  </code></pre>
<script src="../js/prism.js"></script>

我们的项目前端用的是Anjularjs,据说用Angularjs和第三方js库结合的时候会有坑~有待研究。。。

后来我们采用的是Angular-highlightjs,主要是和Angularjs更好的兼容吧~

github上的地址:https://github.com/pc035860/angular-highlightjs

 <link rel="stylesheet" href="../node_modules/highlight.js/styles/github.css"/><script src="../node_modules/highlight.js/highlight.min.js"></script>
<body ng-app="myApp"><div hljs>@font-face {font-family: Chunkfive; src: url('Chunkfive.otf');}body, .usertext {color: #F0F0F0; background: #600;font-family: Chunkfive, sans;}@import url(print.css);@media print {a[href^=http]::after {content: attr(href)}}</div> <script src="../node_modules/angular/angular.min.js"></script><script src="../node_modules/angular-highlightjs/angular-highlightjs.min.js"></script>
<script>var myApp = angular.module('myApp', ['hljs']);
</script>

转载于:https://www.cnblogs.com/LJJ1010/p/5050660.html

在html页面中实现代码的高亮显示相关推荐

  1. 百度搜索引擎提供了一段嵌入到页面中的代码

    百度搜索引擎提供了一段嵌入到页面中的代码 <form action="http://www.baidu.com/baidu" target="_blank" ...

  2. 代码放进word_在Word中插入代码并高亮显示(针对会编程的小伙伴)

    有的时候需要将代码插入到文档当中,而你又不熟悉专门的排版语言.或者说只是临时需要.其实可以在Word中插入代码并使之进行高亮显示,达到和专用排版工具大致一样的效果,使代码的阅读体验更好. 如下图所示, ...

  3. alert不会影响到页面中其他代码执行_JavaScript调试技巧合集——为什么不推荐使用alert调试代码?...

    导读 本文是<JavaScript调试技巧合集>系列分享中的一篇,笔者希望在每篇文章中介绍一个关于JS调试的小知识点,希望你在读完这个系列后,在调试技巧上能够更加运用自如.下面是知识点概览 ...

  4. JSP 页面中java代码 ** can not be resolved to a type

    有时候我们需要直接在页面上写一段java代码,然后在定义一个变量来接收,然后在别的页面直接引用,但是我们经常遇到 ** can not be resolved to a type的异常,今天百度了很长 ...

  5. js中变量和jsp中java代码中变量互相访问解决方案

    1.js变量获取jsp页面中java代码的变量值.  方法:var JS变量名 = <%=JAVA变量名 %>   2.java代码获取js变量的值.  说明:在JSP中:Java部分是在 ...

  6. JSP页面中<%!%>与<%%>与<%=%>

    首先,我们要了解jsp运行原理.JSP的本质就是一个Servlet,JSP的运行之前会先被Tomcat服务器翻译为.java文件,然后在将.java文本编译 为.class文件,而我们在访问jsp时, ...

  7. java中的%%%_JSP页面中%!%与%%与%=%

    首先,我们要了解jsp运行原理.JSP的本质就是一个Servlet,JSP的运行之前会先被Tomcat服务器翻译为.java文件,然后在将.java文本编译 为.class文件,而我们在访问jsp时, ...

  8. ASP.NET 2.0 中的代码隐藏和编译

    ASP.NET 2.0 中的代码隐藏和编译      Fritz Onion 本页内容 代码隐藏 编译 程序集生成 小结 当我撰写本专栏的时候,Microsoft® .NET Framework 2. ...

  9. js变量和java变量相等,js中变量和jsp中java代码中变量互相访问解决方案

    1.js变量获取jsp页面中java代码的变量值. 方法:var JS变量名 = 我们常常会将js文件和jsp文件分开写,在js文件中,上面的方法似乎不管用了. 也可以通过变通的方法来解决: a.js ...

最新文章

  1. 【转】微信公共号开发,提示“该公众号暂时无法提供服务,请稍后再试”,如何解决?...
  2. js通过月份判断前三个月_怀孕前三个月如何判断胎儿发育是否健康,看HCG翻倍情况,快收藏...
  3. OVS datapath包处理流程(二十)
  4. 国产计算机设备,小芯机:“天玥”中国第一台纯国产电脑诞生!
  5. OpenGL 2D Prefix Sum 2维前缀总和的实例
  6. 1034 Head of a Gang (30 分) One way that the police finds the head of a gang is to check people‘s pho
  7. pcb外观维修_「维修案例」泰克AFG3021函数任意波形发生器故障维修
  8. 霍金的遗愿清单:离开地球,警惕人工智能
  9. mqttnet 详解_MQTT协议详解
  10. python三本经典书籍-关于 Python 的经典入门书籍有哪些?
  11. linux每天进步一点点-7月15日
  12. 计算机网络实验视频word,(完整word版)《计算机网络与通信》实验.docx
  13. websphere设置共享库
  14. Python中的shuffle()函数
  15. [Games 101] Lecture 06 Rasterization 2 (Antialiasing and Z-Buffering)
  16. 内蒙农信携手星环科技建设农信大数据平台,激活金融业务创新
  17. C++string:查找、替换、插入、删除等
  18. Markdown 插入图片的方法
  19. iptables 学习笔记 (下)
  20. jstl 标签 循环 序号

热门文章

  1. 什么是SVN?SVN的简介安装和使用
  2. ACL的原理与基本ACL的配置
  3. hadoop成功启动后,重新formatamp;nbs…
  4. Spring声明式事物配置管理
  5. UID和GID(详细说明)
  6. instant run
  7. (九)JMH的详细使用,以及压测dubbo
  8. 玩转SQLite4:SQLite数据插入与查看
  9. CSS如何实现文字两端对齐
  10. 那些年,我们一起参加过的高考