亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS庫之Highlight.js的用法詳解

 更新時間:2017年09月13日 17:03:35   作者:米克斯  
highlight.js是一款輕量級的Web代碼語法高亮庫。下面通過實例代碼給大家分享JS庫之Highlight.js的用法詳解,感興趣的朋友跟隨腳本之家小編一起學習吧

官網(wǎng):https://highlightjs.org/

下載地址:https://highlightjs.org/download/

下載到本地后,新建個頁面測試

1、在head中加入css和js的引用

<head> 
  <title>highlight</title> 
  <meta http-equiv="content-type" content="text/html;charset=utf-8"> 
  <link rel="stylesheet" href="styles/default.css" rel="external nofollow" rel="external nofollow" > 
  <script src="highlight.pack.js"></script> 
  <script>hljs.initHighlightingOnLoad();</script> 
</head> 

2、添加對應要顯示的內容

<pre> 
<code class="python"> 
  # 讀取文件內容 
  def fread(self): 
    # 如果指針位置大于文件大小,說明是更換了文件 
    self.filename = self.getLogPath() 
    if not os.path.isfile(self.filename): 
      while not self.checkfile() : 
        time.sleep(5) 
        self.filename = self.getLogPath() 
      self.fclose() 
      self.fopen() 
      self.pos = 0 
    self.hd.seek(self.pos,0) 
    fline = self.hd.readline() 
    self.pos = self.hd.tell() 
    return fline.replace("\n","") 
  # 將文件指針定位到文件尾部 
  def feof(self): 
    self.fopen() 
    # 定位到文件末尾 
    self.hd.seek(0,2) 
    #設置指針位置 
    self.pos = self.hd.tell() 
</code> 
</pre> 

這里需要把要顯示的內容放入到  <pre><code>這里放內容...</code></pre>  這種格式中

默認的話會智能識別,若是識別不出來是什么語言,就需要在<code>標簽中加入class

例如 <pre><code class="java" >xxx</code></pre> 即可

下載的時候可以選擇你需要的語言,然后再打包,下載后會發(fā)現(xiàn)有個style文件夾,里面放了各種不同的顯示顏色,為了看看都是些什么樣子

我這里弄了個可以選擇樣式的頁面

代碼如下

<html> 
<head> 
  <title>highlight</title> 
  <meta http-equiv="content-type" content="text/html;charset=utf-8"> 
  <link rel="stylesheet" href="styles/default.css" rel="external nofollow" rel="external nofollow" > 
  <script src="highlight.pack.js"></script> 
  <script>hljs.initHighlightingOnLoad();</script> 
</head> 
<body> 
<div id="changeStyleSelect"></div> 
PHP 
<hr> 
<pre><code class="php"> 
class Test { 
  private $name; 
  private $age; 
  public function __construct($array) { 
    $this->name = $array['name']; 
    $this->age = $array['age']; 
  } 
  public function getName() { 
    return $this->name; 
  } 
  public function setName($name) { 
    $this->name = $name; 
  } 
  public function getAge() { 
    return $this->age; 
  } 
  public function show() { 
    printf('my name is %s,age is %d',$this->name,$this->age); 
  } 
} 
</code></pre> 
javascript 
<hr> 
<pre> 
<code class="javascript"> 
  test = { 
    name : function () { 
      return 'hello'; 
    }, 
    age : function () { 
      return 13; 
    } 
  } 
</code> 
</pre> 
python 
<hr> 
<pre> 
<code class="python"> 
  # 讀取文件內容 
  def fread(self): 
    # 如果指針位置大于文件大小,說明是更換了文件 
    self.filename = self.getLogPath() 
    if not os.path.isfile(self.filename): 
      while not self.checkfile() : 
        time.sleep(5) 
        self.filename = self.getLogPath() 
      self.fclose() 
      self.fopen() 
      self.pos = 0 
    self.hd.seek(self.pos,0) 
    fline = self.hd.readline() 
    self.pos = self.hd.tell() 
    return fline.replace("\n","") 
  # 將文件指針定位到文件尾部 
  def feof(self): 
    self.fopen() 
    # 定位到文件末尾 
    self.hd.seek(0,2) 
    #設置指針位置 
    self.pos = self.hd.tell() 
</code> 
</pre> 
java 
<hr> 
<pre> 
<code class="java"> 
  package l2f.gameserver.model; 
  import java.util.ArrayList; 
  public abstract class L2Character extends L2Object { 
   public static final Short ABNORMAL_EFFECT_BLEEDING = 0x0_0_0_1; // not sure 
   public void moveTo(int x, int y, int z) { 
    _ai = null; 
    _log.warning("Should not be called"); 
    if (1 > 5) { 
     return; 
    } 
   } 
   /** Task of AI notification */ 
   @SuppressWarnings( { "nls", "unqualified-field-access", "boxing" }) 
   public class NotifyAITask implements Runnable { 
    private final CtrlEvent _evt; 
    List mList = new ArrayList() 
    public void run() { 
     try { 
      getAI().notifyEvent(_evt, _evt.class, null); 
     } catch (Throwable t) { 
      t.printStackTrace(); 
     } 
    } 
   } 
  } 
</code> 
</pre>   
<script> 
  styleArr = ["agate.css","androidstudio.css","arduino-light.css","arta.css","ascetic.css","atelier-cave-dark.css","atelier-cave-light.css","atelier-dune-dark.css","atelier-dune-light.css","atelier-estuary-dark.css","atelier-estuary-light.css","atelier-forest-dark.css","atelier-forest-light.css","atelier-heath-dark.css","atelier-heath-light.css","atelier-lakeside-dark.css","atelier-lakeside-light.css","atelier-plateau-dark.css","atelier-plateau-light.css","atelier-savanna-dark.css","atelier-savanna-light.css","atelier-seaside-dark.css","atelier-seaside-light.css","atelier-sulphurpool-dark.css","atelier-sulphurpool-light.css","brown-paper.css","codepen-embed.css","color-brewer.css","dark.css","darkula.css","default.css","docco.css","dracula.css","far.css","foundation.css","github.css","github-gist.css","googlecode.css","grayscale.css","gruvbox-dark.css","gruvbox-light.css","hopscotch.css","hybrid.css","idea.css","ir-black.css","kimbie.dark.css","kimbie.light.css","magula.css","mono-blue.css","monokai.css","monokai-sublime.css","obsidian.css","paraiso-dark.css","paraiso-light.css","pojoaque.css","purebasic.css","qtcreator_dark.css","qtcreator_light.css","railscasts.css","rainbow.css","school-book.css","solarized-dark.css","solarized-light.css","sunburst.css","tomorrow.css","tomorrow-night.css","tomorrow-night-blue.css","tomorrow-night-bright.css","tomorrow-night-eighties.css","vs.css","xcode.css","xt256.css","zenburn.css"]; 
  selectHtml = []; 
  selectHtml.push('<select id="changeStyle">'); 
  for(i in styleArr) { 
    OptionValue = styleArr[i]; 
    selectHtml.push('<option value="' + OptionValue +'" >'+ OptionValue +'</option>'); 
  } 
  selectHtml.push('</select>'); 
  selectHtmlString = selectHtml.join(""); 
  document.getElementById('changeStyleSelect').innerHTML = selectHtmlString; 
  obj = document.getElementById('changeStyle'); 
  obj.addEventListener("change",function(event){ 
    var value = this.options[this.options.selectedIndex].value;   
    l = document.createElement('link'); 
    l.setAttribute('href','styles/'+value); 
    l.setAttribute('rel','stylesheet'); 
    document.head.appendChild(l); 
  }); 
  </script> 
</body> 
</html> 

效果圖:

總結

以上所述是小編給大家介紹的JS庫之Highlight.js的用法詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • Javascript三種字符串連接方式及性能比較

    Javascript三種字符串連接方式及性能比較

    這篇文章主要介紹了Javascript三種字符串連接方式及性能比較,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-05-05
  • TypeScript 映射類型詳情

    TypeScript 映射類型詳情

    這篇文章主要介紹了TypeScript 映射類型詳情,一個類型需要基于另外一個類型, 又不想拷貝一份,這個時候可以考慮使用映射類型,映射類型建立在索引簽名的語法上,下面文章我們就從回顧下索引簽名展開TypeScript 映射類型的相關資料,需要的朋友可以參考一下
    2021-12-12
  • PixiJS學習之常見圖形的繪制詳解

    PixiJS學習之常見圖形的繪制詳解

    pixijs 是一個強大的 Web Canvas 2D 庫,以其強大性能而著稱。這篇文章主要帶大家學習一下PixiJS是如何實現(xiàn)常見圖形繪制的,希望對大家有所幫助
    2023-02-02
  • HTML+JavaScript實現(xiàn)掃雷小游戲

    HTML+JavaScript實現(xiàn)掃雷小游戲

    這篇文章主要為大家詳細介紹了HTML+JavaScript實現(xiàn)掃雷小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • JavaScript中實現(xiàn)跨標簽頁通信的方法詳解

    JavaScript中實現(xiàn)跨標簽頁通信的方法詳解

    跨標簽頁通信是指在瀏覽器中的不同標簽頁之間進行數(shù)據(jù)傳遞和通信的過程,這篇文章為大家介紹了一下常見的跨標簽頁通信方式,感興趣的小伙伴可以了解下
    2023-11-11
  • eslint+prettier統(tǒng)一代碼風格的實現(xiàn)方法

    eslint+prettier統(tǒng)一代碼風格的實現(xiàn)方法

    這篇文章主要介紹了eslint+prettier 統(tǒng)一代碼風格的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • JWT?Json?Web?Token全面詳解

    JWT?Json?Web?Token全面詳解

    這篇文章主要為大家介紹了JWT?Json?Web?Token全面詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪<BR>
    2022-11-11
  • 深入淺析knockout源碼分析之訂閱

    深入淺析knockout源碼分析之訂閱

    Knockout是一款很優(yōu)秀的JavaScript庫,它可以幫助你僅使用一個清晰整潔的底層數(shù)據(jù)模型(data model)即可創(chuàng)建一個富文本且具有良好的顯示和編輯功能的用戶界面。這篇文章主要介紹了knockout源碼分析之訂閱的相關資料,需要的朋友可以參考下
    2016-07-07
  • JavaScript中的立即執(zhí)行函數(shù)表達式介紹

    JavaScript中的立即執(zhí)行函數(shù)表達式介紹

    這篇文章主要介紹了JavaScript中的立即執(zhí)行函數(shù)表達式介紹,本文著重講解了什么是立即調用函數(shù)表達式,需要的朋友可以參考下
    2015-03-03
  • 詳解webpack 入門總結和實踐(按需異步加載,css單獨打包,生成多個入口文件)

    詳解webpack 入門總結和實踐(按需異步加載,css單獨打包,生成多個入口文件)

    本篇文章主要介紹了webpack 入門總結和實踐(按需異步加載,css單獨打包,生成多個入口文件) ,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06

最新評論