最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Prism 代碼高亮修改不包含 Code 標(biāo)簽的支持

 更新時(shí)間:2017年03月25日 22:33:37   投稿:mdxy-dxy  
在 WordPress 中加入了百度的 UEditor 編輯器后,由于自帶的代碼插件在使用時(shí)只會(huì)在代碼外層加入 pre 標(biāo)簽,下面給出解決方法,需要的朋友可以參考下

在 WordPress 中加入了百度的 UEditor 編輯器后,由于自帶的代碼插件在使用時(shí)只會(huì)在代碼外層加入 pre 標(biāo)簽,如圖:

但實(shí)際 Prism 高亮需要下面這種格式的支持:

<pre class="line-numbers language-csharp">
  <code>
    //高亮代碼
  </code>
</pre>

所以為了能夠支持 pre 中沒(méi)有 code 標(biāo)簽的情況,在文件 Prism.js 中查找 highlightAll 并修改如下代碼:

....

highlightAll: function(async, callback) {

  //var elements = document.querySelectorAll('code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code');
  //for (var i=0, element; element = elements[i++];) {
  //  _.highlightElement(element, async === true, callback);
  //}
    
  //支持 PRE 標(biāo)簽,修改為
  var clsReg = /\s*\blanguage-\b\s*/;
  var pres = document.querySelectorAll("pre");
  for (var i = 0, pre; pre = pres[i++];) {
    var isCode = false;
    if ((pre.firstChild 
    && (isCode = (pre.firstChild.tagName === "CODE")) 
    && clsReg.test(pre.firstChild.className)) 
    || clsReg.test(pre.className)) {
      if (!isCode) pre.innerHTML = "<code>" + pre.innerHTML + "</code>";
      _.highlightElement(pre.firstChild, async === true, callback);
    }
   }
}

....

修改后進(jìn)行 Js 壓縮,然后覆蓋原文件,然后在 WordPress UEditor 中插入的代碼在前端頁(yè)面就能高亮顯示了。

Prism 高亮官網(wǎng)地址:http://prismjs.com/

Prism GitHub  地址:https://github.com/PrismJS/prism

相關(guān)文章

最新評(píng)論

晋城| 灵川县| 方正县| 达拉特旗| 城固县| 七台河市| 岫岩| 赣州市| 龙陵县| 德昌县| 休宁县| 平原县| 天等县| 永德县| 星座| 东乡| 都安| 海淀区| 溧阳市| 偏关县| 邢台县| 河东区| 班戈县| 广水市| 汤原县| 肃南| 雷山县| 沂水县| 平陆县| 潞西市| 修水县| 富川| 韶山市| 阳原县| 安庆市| 察雅县| 洪泽县| 尉氏县| 中西区| 嘉善县| 都江堰市|