SyntaxHighlighter自動(dòng)識(shí)別并加載腳本語言 原創(chuàng)
SyntaxHighlighter是一個(gè)使用JavaScript編寫的支持多種編程語言語法高亮的JS插件,很多大型網(wǎng)站或博客都在使用。
SyntaxHighlighter插件默認(rèn)是每種編程語言加載對(duì)應(yīng)JS語言庫(kù),那么如何實(shí)現(xiàn)SyntaxHighlighter自動(dòng)加載不同語言的JS語言庫(kù)
SyntaxHighlighter官方已經(jīng)給出了解決方案 shAutoloader.js 自動(dòng)加載庫(kù);
在HTML文件中引用SyntaxHighlighter核心運(yùn)行庫(kù)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Hello SyntaxHighlighter</title> <script type="text/javascript" src="scripts/shCore.js"></script> <script type="text/javascript" src="scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="styles/shCore.css" rel="external nofollow" rel="external nofollow" /> <link type="text/css" rel="stylesheet" href="styles/shCoreDefault.css" rel="external nofollow" rel="external nofollow" /> </head>
shCore.js SyntaxHighlighter插件的核心運(yùn)行庫(kù)
shAutoloader.js 自動(dòng)加載運(yùn)行庫(kù)要實(shí)現(xiàn)自動(dòng)加載必須引入此文件
shCore.css 核心CSS樣式
shCoreDefault.css 主題CSS樣式
以上四個(gè)文件必須引用到文檔中
需要高亮顯示的代碼請(qǐng)入在 <pre class="brush:js;"></pre> 里
代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Hello SyntaxHighlighter</title>
<script type="text/javascript" src="scripts/shCore.js"></script>
<script type="text/javascript" src="scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="styles/shCore.css" rel="external nofollow" rel="external nofollow" />
<link type="text/css" rel="stylesheet" href="styles/shCoreDefault.css" rel="external nofollow" rel="external nofollow" />
</head>
<body>
<h1>Hello SyntaxHighlighter</h1>
<pre class="brush: js;">
function helloSyntaxHighlighter()
{
return "hi!";
}
</pre>
<pre class="brush: js;"> 中的 class="brush: js;"是根據(jù)顯示代碼語言而定
下面是實(shí)現(xiàn)SyntaxHighlighter自動(dòng)加載的主要代碼
<script language="javascript">
function path(){
var args = arguments,
result = [];
for(var i = 0; i < args.length; i++)
result.push(args[i].replace('@', '/pub/sh/current/scripts/'));//請(qǐng)?zhí)鎿Q成自己項(xiàng)目中SyntaxHighlighter的具體路徑
return result
};
SyntaxHighlighter.autoloader.apply(null, path(
'applescript @shBrushAppleScript.js',
'actionscript3 as3 @shBrushAS3.js',
'bash shell @shBrushBash.js',
'coldfusion cf @shBrushColdFusion.js',
'cpp c @shBrushCpp.js',
'c# c-sharp csharp @shBrushCSharp.js',
'css @shBrushCss.js',
'delphi pascal @shBrushDelphi.js',
'diff patch pas @shBrushDiff.js',
'erl erlang @shBrushErlang.js',
'groovy @shBrushGroovy.js',
'java @shBrushJava.js',
'jfx javafx @shBrushJavaFX.js',
'js jscript javascript @shBrushJScript.js',
'perl pl @shBrushPerl.js',
'php @shBrushPhp.js',
'text plain @shBrushPlain.js',
'py python @shBrushPython.js',
'ruby rails ror rb @shBrushRuby.js',
'sass scss @shBrushSass.js',
'scala @shBrushScala.js',
'sql @shBrushSql.js',
'vb vbnet @shBrushVb.js',
'xml xhtml xslt html @shBrushXml.js'
));
SyntaxHighlighter.all();
</script>
以上就是實(shí)現(xiàn)SyntaxHighlighter自動(dòng)識(shí)別語言并自動(dòng)載語言庫(kù)的代碼,需要的同學(xué)可以測(cè)試下;
本文實(shí)例下載:SyntaxHighlighter自動(dòng)識(shí)別并加載
- SyntaxHighlighter 去掉右側(cè)滾動(dòng)條的方法
- 防止SyntaxHighlighter.js的代碼高亮?xí)r閃一下的解決方法
- z-blog SyntaxHighlighter 長(zhǎng)代碼無法換行解決辦法(基于jquery)
- SyntaxHighlighter 3.0.83使用筆記
- ckeditor syntaxhighlighter代碼高亮插件配置分享
- CKEditor中加入syntaxhighlighter代碼高亮插件
- z-blog SyntaxHighlighter 長(zhǎng)代碼無法換行解決辦法(jquery)
- 解決SyntaxHighlighter 代碼高亮不換行問題的解決方法
- FCKeditor + SyntaxHighlighter 讓代碼高亮著色插件
- 代碼著色之SyntaxHighlighter項(xiàng)目(最流行的代碼高亮)
- syntaxhighlighter 去掉右上角問號(hào)圖標(biāo)的三種方法
- 為SyntaxHighlighter添加新語言的方法
- SyntaxHighlighter配合CKEditor插件輕松打造代碼語法著色
- SyntaxHighlighter語法高亮插件使用說明
- ckeditor syntaxhighlighter代碼高亮插件,完美修復(fù)
- coolcode轉(zhuǎn)SyntaxHighlighter與Mysql正則表達(dá)式實(shí)現(xiàn)分析
- FCKeditor 和 SyntaxHighlighter 代碼高亮插件的整合
- SyntaxHighlighter 語法高亮插件的使用教程
- 使用SyntaxHighlighter實(shí)現(xiàn)HTML高亮顯示代碼的方法
- FCKEditor SyntaxHighlighter整合實(shí)現(xiàn)代碼高亮顯示
- SyntaxHighlighter代碼加色使用方法
- syntaxhighlighter 使用方法
- 關(guān)于實(shí)現(xiàn)代碼語法標(biāo)亮 dp.SyntaxHighlighter
- SyntaxHighlighter?Autoloader(自動(dòng)加載)最優(yōu)方式
相關(guān)文章
uniapp微信小程序授權(quán)登錄并獲取手機(jī)號(hào)的方法
這篇文章主要給大家介紹了關(guān)于uniapp微信小程序授權(quán)登錄并獲取手機(jī)號(hào)的相關(guān)資料,我們?cè)趗niapp開發(fā)微信小程序的過程中,經(jīng)常需要在微信端登錄,需要的朋友可以參考下2023-06-06
JavaScript比較同一天的時(shí)間大小實(shí)例代碼
在項(xiàng)目開發(fā)中,經(jīng)常會(huì)遇到同一天內(nèi)的時(shí)間大小比較,下面小編給大家?guī)砹薐avaScript比較同一天的時(shí)間大小實(shí)例代碼,需要的朋友參考下2018-02-02
微信小程序云開發(fā)實(shí)現(xiàn)增刪改查功能
這篇文章主要為大家詳細(xì)介紹了微信小程序云開發(fā)實(shí)現(xiàn)增刪改查功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05
JavaScript中的純函數(shù)與偏函數(shù)你了解嗎
JS中,純函數(shù)指在相同的輸入下始終產(chǎn)生相同的輸出并且沒有副作用的函數(shù),偏函數(shù)指一種創(chuàng)建新函數(shù)的方法,通過預(yù)設(shè)一個(gè)或多個(gè)參數(shù)從而實(shí)現(xiàn)對(duì)原始函數(shù)的封裝和定制,本文主要來講講純函數(shù)與偏函數(shù)的一些使用,需要的可以參考一下2023-05-05
根據(jù)后端返回的json數(shù)據(jù)快速生成ts類型的實(shí)現(xiàn)代碼
在前端開發(fā)中,我們通常需要處理來自后端或其他數(shù)據(jù)源的 JSON 數(shù)據(jù),這些數(shù)據(jù)可能非常復(fù)雜,包含不同類型的屬性,甚至嵌套對(duì)象和數(shù)組,為了更好地使用這些數(shù)據(jù),我們希望將其轉(zhuǎn)換為TypeScript類型定義,以獲得類型檢查和代碼智能提示的好處2023-10-10
使用JavaScript腳本無法直接改變Asp.net中Checkbox控件的Enable屬性的解決方法
今天工作中遇到個(gè)小問題,情況如下,當(dāng)我在后臺(tái)頁面中設(shè)置Checkbox的Enable的值為false時(shí),我在前端頁面中使用腳本(chk.disabled = false),無法改變disabled的值為false,下面看看小編是怎么解決此問題的,需要的朋友一起了解了解吧2015-09-09
20170918 前端開發(fā)周報(bào)之JS前端開發(fā)必看
本文給大家分享了最新版js 前端開發(fā)周報(bào),內(nèi)容非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧2017-09-09

