码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 前端使用highlight.js代码高亮显示(服务端返回前端代码的字符串格式)


    目录

          • 前端代码高亮JavaScript库
          • 为什么选择lighlight.js库
          • 关于lighlight.js库
          • 使用lighlight.js库
          • 需要用到其它JavaScript库
          • 解决相关功能的类似项目
          • 关于前端内容的相关工具
          • 其它内容

    认真看完一定会有所收获

    前端代码高亮JavaScript库

    可以参考如下博客
    链接:
    专为开发者准备的10个优秀JavaScript语法高亮库
    前端网页代码高亮显示的7种常用插件

    为什么选择lighlight.js库
    • 通过比较第一部分10个优秀的JavaScript语法高亮库,认为lighlight.js库的使用量很大
    • 官方文档内容比较详细
    • 主题丰富
    • 支持更多的编程语言,拓展性好
    关于lighlight.js库

    官方文档
    官方使用文档
    官方API文档
    官方样式demo

    • 目前最新版本(version) 11.6.0
    • 本教程使用的正是11.6.0版本(最新版本)
    使用lighlight.js库
    1. 下面是html文件中的代码
    @{
        Layout = null;
    }
    DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>lighlight库使用说明title>
        <link href="/lib/highlight/css/default.min.css" rel="stylesheet" />
        <script src="/lib/highlight/highlight.min.js">script>
        <script src="/lib/highlight/lodash.min.js">script>
        <style>
            
        style>
    head>
    <body>
        <pre>
            <code id="content" class="language-xml">code>
        pre>
        
        <script src="/lib/jquery/dist/jquery.min.js">script>
        
        <script>
            let  el = document.querySelector('#content')
            el.innerHTML=_.escape('服务端从数据库查询到的代码字符串');
            hljs.highlightElement(el);
        script>
    
    body>
    html>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    1. 仔细研究学习上述代码就可以实现核心功能
    2. 注意: escape() 方法是lodash库中的方法,作用是将字符串转译成html,下方有该库的GitHub地址
    3. 高亮方法11.0版本之前使用 hljs.highlightBlock(block)方法;11.0版本之后使用hljs.highlightElement(el)方法
    4. 初始化方法10.6版本之前使用hljs.initHighlightingOnLoad()方法;10.6版本后使用hljs.highlightAll()方法
    5. 相关博客web网页代码高亮显示js插件highlight.js
    需要用到其它JavaScript库

    lodash库
    lodash库官网

    解决相关功能的类似项目

    下面的项目非常优秀,是我解决该问题的灵感来源,感谢!!!项目GitHub地址如下,可以下载学习
    highlight-js-demo

    关于前端内容的相关工具
    1. html转译工具网址
    2. 原生方法JS处理html的编码(encode)与解码(decode)
    3. jQuery学习之DOM节点的插入方法总结
    4. jquery怎么给p标签赋值
    5. jquery获取html元素内容的方法
    其它内容
    1. 使用jQuery格式化xml串
    function formatXml(xml) {
         var formatted = '';
         var reg = /(>)(<)(\/*)/g;
         xml = xml.replace(reg, '$1\r\n$2$3');
         var pad = 0;
         jQuery.each(xml.split('\r\n'), function(index, node) {
          var indent = 0;
          if (node.match( /.+<\/\w[^>]*>$/ )) {
           indent = 0;
          } else if (node.match( /^<\/\w/ )) {
           if (pad != 0) {
            pad -= 1;
           }
          } else if (node.match( /^<\w[^>]*[^\/]>.*$/ )) {
           indent = 1;
          } else {
           indent = 0;
          }
          var padding = '';
          for (var i = 0; i < pad; i++) {
           padding += '  ';
          }
          formatted += padding + node + '\r\n';
          pad += indent;
         });
         return formatted;
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    1. JavaScript+pre标签实现JSON格式化展示
    2. layui框架中的代码高亮layui-code
    3. xml格式化可是使用 vkbeautify模块
  • 相关阅读:
    Spring Security(六) —— CSRF
    Electron结合React和TypeScript进行开发
    dump文件类型与dump文件生成方法详解
    统计字符串中元素的个数(多种方法)
    动态规划4(Leetcode746使用最小花费爬楼梯)
    Arduino下载与安装(Windows 10)
    【水果派不吃灰】Raspberry Pi树莓派小常识
    Kubernetes 迁移节点 Kubelet 数据存储目录
    用Windows自带的工具检查磁盘
    突出最强算法模型——回归算法 !!
  • 原文地址:https://blog.csdn.net/baidu_38493460/article/details/127576952
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号