之前给大家推荐过两款代码高亮库,分别是 code-prettify 和 Crayon Syntax Highlighter,今天给大家推荐的是另一个代码高亮库Prism.js。

使用 Prism.js 实现代码语法高亮-图片1

一、介绍

Prism.js 是一款轻量的、可以定制的代码高亮显示插件,官网:http://prismjs.com,使用 Prismjs 可以快速为网站添加代码高亮功能。Prism.js 采用自定义下载,支持超过 100 多种编程语言,还支持很多种插件,目前有8种主题可供选择,是简洁、高效的代码高亮解决方案。

二、下载

访问官网下载页面:

官方网站下载

使用 Prism.js 实现代码语法高亮-图片2

由四部分构成:

  • 核心代码(Core)
  • 主题(Themes)
  • 支持高亮的语言(Languages)
  • 需要的插件(Plugins)

下载:

选择 Themes、Languages 及 Plugins 后,点击底部的下载按钮,会得到 prism.css 和 prism.js 两个文件。

三、配置及使用

1、首先引入 prism.css 和 prism.js 文件

  1.  <link href="prism.css" rel="stylesheet" />
  2.  <script src="prism.js"></script>

2、添加标签

遵循 HTML5 标准,Prism 使用语义化的 <pre> 元素和 <code> 元素来标记代码区块。

  1. <pre class="line-numbers">
  2. <code class="language-markup">
  3. </code>
  4. </pre>

页面上只要遇到类似上面的代码,就会被高亮。line-numbers便是显示行号,language-markup就是语言。

3、添加行号

需要实现行号效果,只需要在<pre>标签中加上line-numbers类即可。使用了 jQuery,也可以通过jQuery来添加行号。

  1. <script type="text/javascript">
  2. $('pre').addClass("line-numbers");
  3. </script>

示例代码

代码:

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
  6.     <meta name="keywords" content="prism,WordPress,代码高亮" />
  7.     <link rel='stylesheet' href='prism.css' type='text/css' />
  8.     <script type='text/javascript' src='prism.js'></script>
  9. </head>
  10. <body>
  11.     <pre class="line-numbers">
  12.         <code class="language-javascript">
  13.             var Prism = require('prismjs');
  14.             var loadLanguages = require('prismjs/components/');
  15.             loadLanguages(['haml']);
  16.  
  17.             // The code snippet you want to highlight, as a string
  18.             var code = "= ['hi', 'there', 'reader!'].join \" \"";
  19.  
  20.             // Returns a highlighted HTML string
  21.             var html = Prism.highlight(code, Prism.languages.haml, 'haml');
  22.         </code>
  23.     </pre>
  24. </body>
  25. </html>

本文已通过「原本」原创作品认证,转载请注明文章出处及链接。

WEB最后更新:2022-11-9
夏日阳光
  • 本文由 夏日阳光 发表于 2019年6月2日
  • 本文为夏日阳光原创文章,转载请务必保留本文链接:https://www.pieruo.com/73.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证
加载中...