prism.js使页面代码变得漂亮
第一次接触prism.js,并把它用到了园子里。
装逼如风,常伴吾身。有了如此利器,从此院子里我的代码是“最”漂亮的!
身为程序员深刻体会代码高亮在生产过程中是多么的重要。以下便是讲解如何在页面上显示代码高亮。
准备
官方下载地址:http://prismjs.com/
没错!官网很直观,没有那些花里花哨的东西,直接点击下载,进入到下载页面。

接下来这张图比较长,大家可以直接跳过着看。
- 核心代码(必选)
- 主题(我选择的是“贵族黑”,别问我为什么这么叫,任性)
- 语法包(是不是很多,随便选,随便挑,反正不要钱)
- 插件(我用了行数显示,其他的没试过,园友自行挖掘)

选择完之后,点击两个下载按钮,便会下载对应的Js和Css,而且都是一个,是不是很方便!!!
因为在页面上显示,我们需要显示的那坨东西浏览器只会认为是字符串。有了以上Js,他就会去识别相关的关键字,然后为其打上对应的标签以及样式。而Css毋庸置疑,就是用来设置颜色的。当然可以自行更改,我的就是按照vs2015默认状态的样式更改的。
配置
首先引用Js和Css
<link href="/prism.css" rel="stylesheet" />
<script src="/prism.js" ></script>
添加标签
<pre class="line-numbers">
<code class="language-markup">
</code>
</pre>
line-numbers便是显示行号,language-markup就是语言。
请开始你的表演
html版
<!DOCTYPE html>
<html>
<head>
<script>
// 输出标题:
document.getElementById("myH1").innerHTML="Welcome to my Homepage";
// 输出段落:
document.getElementById("myP").innerHTML="This is my first paragraph.";
</script>
</head>
<body>
<h1 id="myH1"></h1>
<p id="myP"></p>
<p><b>注释:</b>注释不会被执行。</p>
</body>
</html>
C#版
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using System.Xml.Serialization;
using System.IO;
using System.Xml;
namespace GxHelper
{
/// <summary>
/// 转换工具
/// v_0.0.3
/// </summary>
public static class ConversionHelper
{
#region 域
#endregion
#region 公共方法
/// <summary>
/// 对象转成Json字符串
/// </summary>
/// <param name="obj">对象</param>
/// <returns></returns>
public static string ToJson(this object obj)
{
return JsonConvert.SerializeObject(obj);
}
/// <summary>
/// Json字符串转成对象
/// </summary>
/// <typeparam name="T">待转类型</typeparam>
/// <param name="json">Json字符串</param>
/// <returns></returns>
public static T JsonToObj<T>(string json)
{
return JsonConvert.DeserializeObject<T>(json);
}
/// <summary>
/// 对象转成XML字符串
/// </summary>
/// <param name="obj">对象</param>
/// <returns></returns>
public static string ToXml(this object obj)
{
//空值直接返回
if (obj == null)
{
return string.Empty;
}
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("", "");
XmlSerializer serializer = new XmlSerializer(obj.GetType());
using (StringWriter sw = new StringWriter())
{
serializer.Serialize(sw, obj, ns);
return sw.ToString();
}
}
/// <summary>
/// XML字符串转成对象
/// </summary>
/// <typeparam name="T">待转类型</typeparam>
/// <param name="xml">Xml字符串</param>
/// <returns></returns>
public static T XmlToObj<T>(string xml)
{
using (StringReader sr = new StringReader(xml))
{
XmlSerializer xs = new XmlSerializer(typeof(T));
return (T)xs.Deserialize(sr);
}
}
#endregion
#region 私有方法
#endregion
}
}
结语
第三方的确实漂亮,但是写博客时运用起来甚是麻烦。
因为用Windows Live Writer写的文章,而且也用了园子里提供的代码插件,导致插入的代码没有打上对应的标签,需要自己去源代码里进行修改(此处应有喷子:修改下代码插件就行)。
但是能力有限,学长只能送到这了。
prism.js使页面代码变得漂亮的更多相关文章
- JS刷新页面总和!多种JS刷新页面代码!
1)<meta http-equiv="refresh"content="10;url=跳转的页面">10表示间隔10秒刷新一次2)<scri ...
- js让页面逐渐变透明,直到消失
在gitHub闲逛的时候,无意间发现了些好玩的代码,一个歪果仁写的,这里我做了些修改和优化,gitHub链接已经忘了,是一段恶搞的js代码,假如你的顾客或者老板拖欠你工资,那你就可以让项目页面在浏览器 ...
- 【highlight.js】页面代码高亮插件
[highlight.js] 很多博客都支持页面插入各种语言的代码,而这些代码肯定是有高亮设置的.那么在我们自己的页面上如何进行代码高亮设置?有现成的这个highlight.js插件我们可以使用. h ...
- js刷新页面代码
第一种: location.reload() 第二种: location.replace(location.href) 第三种: history.go() 第四种: location=location ...
- aos.js让页面滚动变得丰富
(转)<script src="js/jquery-2.1.1.min.js" type="text/javascript"></script ...
- js使页面重定向
location.assign("http://www.baidu.com"); window.location="http://www.baidu.com"; ...
- wordpress优化之结合prism.js为编辑器自定义按钮转化代码
原文链接 http://ymblog.net/2016/07/24/wordpress-prism/ 继昨天花了一天一夜的时间匆匆写了主题Jiameil3.0之后,心中一直在想着优化加速,体验更好,插 ...
- prism.js——让网页中的代码更好看
粗放的代码展示 有时候,网页中会插入代码.直接把代码放入<pre></pre>标签和<code></code>标签里,也算是可以在页面中显示出来. 比如 ...
- js自动刷新页面代码
<script language="JavaScript">function myrefresh(){window.location.reload();}setTime ...
随机推荐
- C#获取图片扩展名
代码: private string GetImageExtension(MemoryStream ms) { try { Image image = Image.FromStream(ms); if ...
- dockerfile构建redis
-------------------------------------------------------------
- Android 异步网络图片加载
ListView异步加载图片 http://www.eoeandroid.com/forum.php?mod=viewthread&tid=161586 [Android分享] ListVie ...
- 重新使用Eclipse建立安卓工程遇到的问题
很早之前用过Eclipse建立安卓工程,很久没用了,最近打算用Eclipse开发安卓程序,我是用谷歌提供的Eclipse集成环境建立的安卓工程,发现有了一些变化,而且遇到一点问题,这几天不断学习,终于 ...
- 多实例mysql的安装和管理【验证通过】
mysql的多实例有两种方式可以实现,两种方式各有利弊.第一种是使用多个配置文件启动不同的进程来实现多实例,这种方式的优势逻辑简单,配置简单,缺点是管理起来不太方便.第二种是通过官方自带的mysqld ...
- 【OCP|052】OCP最新题库解析系列-3
3.Which structure can span multiple data files?❑ A) a permanent tablespace❑ B) a bigfile tablespace❑ ...
- docker-ce的安装以及卸载
注意:以下命令无特殊说明外均在root用户下执行 一.Docker CE的安装 1. 首先,卸载老旧的docker. yum remove docker \ docker-client \ docke ...
- 洛谷P4586 [FJOI2015]最小覆盖双圆问题(最小圆覆盖)
题面 传送门 前置芝士 最小圆覆盖 题解 我们按照\(x\)坐标排序,然后二分中间点,把点分成左右两边,对两边都做一个最小圆覆盖,那么半径大一点的那个就是答案了.然后对半径大的那一边继续二分就行了 然 ...
- ie 8及以下 前端cors ajax跨域须知
http://www.cnblogs.com/xishuai/p/jquery-ajax-ie8-cors.html
- logstash5.5.0同步sql server数据
注意:jdbc.conf和jdbc.sql文件编码都为ANSI jdbc.conf内容如下: input { stdin { } jdbc { jdbc_connection_string => ...