当前位置: 代码网 > it编程>前端脚本>网页编辑器 > SyntaxHighlighter Autoloader(自动加载)最优方式

SyntaxHighlighter Autoloader(自动加载)最优方式

2024年05月15日 网页编辑器 我要评论
一、syntaxhighlighter介绍syntaxhighlighter是一款用于web页面的代码着色工具,可以用来着色多种语言,可以是html,css,javascript,还可以是c,java

一、syntaxhighlighter介绍

syntaxhighlighter是一款用于web页面的代码着色工具,可以用来着色多种语言,可以是html,css,javascript,还可以是c,java等编程语言。它可以在网页中对各种程序源代码语法进行加亮显示。支持当前流行的各种编程语言:c#、css、c++、delphi、java、javascript、php、python、ruby、sql、visual basic、xml / html。

因为使用syntaxhighlighter的时候会使用到多种语言,一次必载入全部的语言配置文件下载的东西会比较多,所以syntaxhighlighter提供了一个shautoloader.js脚本。

二、使用教程

1、将下载的syntaxhighlighter文件解压缩,只保留里面的scripts文件夹和styles文件夹。

2、在网页的<head></head>之间引入css文件:

<link rel="stylesheet" type="text/css"  href="/static/syntaxhighlighter/styles/shcoredefault.css"></link>

3、在网页的</body>标签前面引入js文件:

<script class="javascript" src="/static/syntaxhighlighter/scripts/shcore.js"></script>
<script class="javascript" src="/static/syntaxhighlighter/scripts/shautoloader.js"></script>
<script class="javascript">
function path() {
    var args = arguments,result = [];
    for (var i = 0; i < args.length; i++)
       result.push(args[i].replace('$', '/static/syntaxhighlighter/scripts/'));
    return result;
}
$(function() {
    syntaxhighlighter.autoloader.apply(null, path(
              'php                    $shbrushphp.js',
              'java                   $shbrushjava.js',
              'objc obj-c             $shbrushobjc.js',
              'actionscript3 as3      $shbrushas3.js',
              'bash shell             $shbrushbash.js',
              'coldfusion cf          $shbrushcoldfusion.js',
              'c# c-sharp csharp      $shbrushcsharp.js',
              'delphi pascal          $shbrushdelphi.js',
              'jfx javafx             $shbrushjavafx.js',
              'js jscript javascript  $shbrushjscript.js',
              'perl pl                $shbrushperl.js',
              'py python              $shbrushpython.js',
              'ruby rails ror rb      $shbrushruby.js',
              'vb vbnet               $shbrushvb.js',
              'xml xhtml xslt html    $shbrushxml.js'
    ));
    syntaxhighlighter.defaults['gutter'] = true;//是否显示代码行数
    syntaxhighlighter.defaults['toolbar'] = false;
    syntaxhighlighter.defaults['auto-links'] = false;
    syntaxhighlighter.defaults['quick-code'] = false;
    syntaxhighlighter.all();
})
</script>

三、使用方法

一:使用pre

<pre name="code" class="php">
//这里是你需要高亮的代码
</pre>
<div class="jb51code"><pre class="brush:py;">
//python代码
</pre></div>

二:使用textarea

<textarea name="code" class="c#" cols="60" rows="10">
//这里是你需要高亮的代码
</textarea>

四、高级技巧 按需加载

但文章详细页面经常不会有任何代码,所以这些js文件以及js代码需要判断是否执行:

//判断文章是否需要加载代码高亮插件
var iscode = model.html.tostring().contains( "<pre class=\"brush:" );
     if (iscode){
         //这里放置上面的js文件链接以及js代码。
     }

如果没有使用框架可以使用下面的代码

if($('div.jb51code').length>0){
    //这里放置上面的js文件链接以及js代码。
}

到此这篇关于syntaxhighlighter autoloader(自动加载)最优方式的文章就介绍到这了,更多相关syntaxhighlighter 自动加载内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com