首页 > web前端 > js教程 > 正文

javascript如何实现代码高亮_Prism.js的基本用法是什么

夢幻星辰
发布: 2025-12-17 22:35:02
原创
979人浏览过
Prism.js 是最轻量易用的 JavaScript 代码高亮方案,支持丰富语言和主题;需引入核心 CSS 和 JS,代码块须为 结构,按需加载语言或插件,并可手动调用 Prism.highlightAll() 处理动态内容。

javascript如何实现代码高亮_prism.js的基本用法是什么

JavaScript 实现代码高亮,最轻量、易用且支持丰富的语言和主题的方案之一就是 Prism.js。它不依赖 jQuery,体积小,按需加载语法插件,适合静态页面或现代前端项目。

引入 Prism.js(CDN 最快上手)

直接在 HTML 的 <code></code> 或页面底部加入 CDN 链接即可:

  • 引入核心 CSS(决定高亮样式):
    <link href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/themes/prism.min.css" rel="stylesheet">
  • 引入核心 JS(含基础语法如 JavaScript、CSS、HTML):
    <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/prism.min.js"></script>

此时,所有带有 class="xxx"<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false;">&lt;code&gt;&lt;/code&gt;</pre>

登录后复制
</div> 结构会自动高亮(如 language-jslanguage-html)。

写法规范:HTML 结构必须正确

Prism 只处理符合约定结构的代码块:

立即学习Java免费学习笔记(深入)”;

function hello() {
  console.log('Hello, Prism!');
}
登录后复制

注意要点:

腾讯AI 开放平台
腾讯AI 开放平台

腾讯AI开放平台

腾讯AI 开放平台 381
查看详情 腾讯AI 开放平台
  • 外层用 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false;">,内层用 <code></code>
  • <code></code> 必须带 class="xxx",比如 language-pythonlanguage-bash
  • 不要写成 class="prism js" 或其他多余 class,除非你自定义了初始化逻辑

按需加载更多语言或功能(如行号、复制按钮)

Prism 默认只包含常用语言。需要 Python、PHP、JSX 等,要额外引入对应语言文件:

  • 例如添加 Python 支持:
    <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-python.min.js"></script>
  • 启用行号插件:
    引入插件 CSS + JS:
    <link href="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/line-numbers/prism-line-numbers.min.css" rel="stylesheet" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
    然后给 <pre class="brush:php;toolbar:false;"> 加 class:
    <pre class="line-numbers"><code class="js">...
    登录后复制

手动触发高亮(适用于动态插入的代码)

如果代码块是 JS 动态生成(比如从 Markdown 渲染后插入),Prism 不会自动处理,需手动调用:

  • 高亮单个代码块:
    Prism.highlightElement(codeDomNode);
  • 高亮整个页面新插入的代码:
    Prism.highlightAll();

推荐在 DOM 插入完成后调用,比如在 setTimeout(() => { Prism.highlightAll(); }, 0)MutationObserver 中使用。

基本上就这些。Prism 上手不复杂但容易忽略结构和加载顺序,按规范写好 HTML + 引对资源,就能稳定工作。

以上就是javascript如何实现代码高亮_Prism.js的基本用法是什么的详细内容,更多请关注php中文网其它相关文章!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号