codeMirror插件使用讲解


Posted in Javascript onJanuary 16, 2017

codeMirror是一款十分强大的代码编辑插件,提供了十分丰富的API,最近在项目中用到了这款插件,于是在这里给大家分享下使用方法和心得:

codeMirror调用非常方便

首先在页面中载入插件CSS及JS文件

<link href="/static/codemirror/lib/codemirror.css" rel="stylesheet" >
 <script src="/static/codemirror/lib/codemirror.js"></script>

同时加载你所需要使用的脚本JS及风格样式CSS文件,如下举例:

<link href="/static/codemirror/theme/3024-night.css" rel="stylesheet">
 <link href="/static/codemirror/theme/erlang-dark.css" rel="stylesheet">
 <script src="/static/codemirror/mode/shell/shell.js"></script>
 <script src="/static/codemirror/mode/perl/perl.js"></script>
 <script src="/static/codemirror/mode/python/python.js"></script>

注意文件的放置位置

下一步在html页面中编写好代码:

<!--选择脚本编码代码-->
<div class="controls">
  <input class="ck-code" type="radio" name="script_once_type" id="script_once_type1" checked> shell
   <input class="ck-code" type="radio" name="script_once_type" id="script_once_type2"> bat
   <input class="ck-code" type="radio" name="script_once_type" id="script_once_type3"> python
</div>
<!--选择脚本风格代码-->
<div class="controls">
  <select id='select'>
     <option>default</option>
     <option>3024-night</option>
     <option selected>erlang-dark</option>
  </select>
</div>
<!--textarea-->
<textarea id="script_once_code">
  #!/bin/sh
</textarea>
<textarea id="code2" class="hide">
  #!/usr/bin/env python
  # -*- coding: utf8 -*-
</textarea>

调用关键代码如下:

var editor = CodeMirror.fromTextArea($("#script_once_code")[0], { //script_once_code为你的textarea的ID号
     lineNumbers: true,//是否显示行号
     mode:"shell", //默认脚本编码
     lineWrapping:true, //是否强制换行
 });

JS配置代码如下:

//选择界面风格JS
$('#select').change(function(){
   var theme = $('#select').val();
     editor.setOption("theme", theme); //editor.setOption()为codeMirror提供的设置风格的方法
 });
//选择脚本类型JS
var txt1=$("#script_once_code").val();
var txt2='';
var txt3=$("#code2").val();
$(".ck-code").click(function(){
    var txt=editor.getValue(); //editor.getValue()获取textarea中的值
    var lang=$(this).prop("id");
    if(lang=="script_once_type1") {
        editor.setOption("mode","shell");//editor.setOption()设置脚本类型
          editor.setValue(txt1);// editor.setValue()设置textarea中的值
    }
    else if(lang=="script_once_type2") {
        editor.setOption("mode","perl");
        editor.setValue(txt2);
    }
    else {
        editor.setOption("mode","python");
        editor.setValue(txt3);
    }
});

最终界面如下:

codeMirror插件使用讲解

如需配置更多参数,可以访问codeMirror插件官网:http://codemirror.net/ 查看其配置文档。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
服务器安全设置的几个注册表设置
Jul 28 Javascript
JavaScript 学习笔记(十四) 正则表达式
Jan 22 Javascript
改进UCHOME的记录发布,增强可访问性用户体验
Jan 17 Javascript
快速排序 php与javascript的不同之处
Feb 22 Javascript
js获取对象为null的解决方法
Nov 21 Javascript
jQuery实现的一个tab切换效果内部还嵌有切换
Aug 10 Javascript
js delete 用法(删除对象属性及变量)
Aug 24 Javascript
node.js中的buffer.fill方法使用说明
Dec 14 Javascript
Javascript农历与公历相互转换的简单实例
Oct 09 Javascript
AngularJS前端页面操作之用户修改密码功能示例
Mar 27 Javascript
js脚本编写简单刷票投票系统
Jun 27 Javascript
vue实现从外部修改组件内部的变量的值
Jul 30 Javascript
微信小程序 图片边框解决方法
Jan 16 #Javascript
微信小程序 scroll-view隐藏滚动条详解
Jan 16 #Javascript
微信小程序 video详解及简单实例
Jan 16 #Javascript
Vue系列:通过vue-router如何传递参数示例
Jan 16 #Javascript
微信小程序 登录实例详解
Jan 16 #Javascript
微信小程序 传值取值的几种方法总结
Jan 16 #Javascript
详解vue-Resource(与后端数据交互)
Jan 16 #Javascript
You might like
农民和部队如何穿矿
2020/03/04 星际争霸
自定义php类(查找/修改)xml文档
2013/03/26 PHP
PHP扩展Memcache分布式部署方案
2015/12/06 PHP
laravel5.2实现区分前后台用户登录的方法
2017/01/11 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
2017/12/21 PHP
thinkphp5.1 文件引入路径问题及注意事项
2018/06/13 PHP
JS 容错处理代码, 屏蔽错误信息
2021/03/09 Javascript
JS 文件大小判断的实现代码
2010/04/07 Javascript
JS 无限级 Select效果实现代码(json格式)
2011/08/30 Javascript
网页整体变灰白色(兼容各浏览器)实例
2013/04/21 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
浅谈重写window对象的方法
2014/12/29 Javascript
jQuery实现在textarea指定位置插入字符或表情的方法
2015/03/11 Javascript
js中数组的常用方法小结
2016/12/30 Javascript
解决layer 关闭当前弹窗 关闭遮罩层 input值获取不到的问题
2019/09/25 Javascript
Vue el-autocomplete远程搜索下拉框并实现自动填充功能(推荐)
2019/10/25 Javascript
jquery实现简单拖拽效果
2020/07/20 jQuery
vue路由的配置和页面切换详解
2020/09/09 Javascript
JavaScript实现图片合成下载的示例
2020/11/19 Javascript
用Python编写一个简单的FUSE文件系统的教程
2015/04/02 Python
理解Python中函数的参数
2015/04/27 Python
浅谈python和C语言混编的几种方式(推荐)
2017/09/27 Python
Python 列表理解及使用方法
2017/10/27 Python
python字典通过值反查键的实现(简洁写法)
2020/09/30 Python
党支部公开承诺践诺书
2014/03/28 职场文书
美丽家庭事迹材料
2014/05/03 职场文书
考试诚信承诺书
2014/05/23 职场文书
营销团队口号
2014/06/06 职场文书
工人先锋号申报材料
2014/12/29 职场文书
学术研讨会欢迎词
2015/01/26 职场文书
公务员年度考核个人总结
2015/02/12 职场文书
义诊活动通知
2015/04/24 职场文书
2015年全国助残日活动方案
2015/05/04 职场文书
终止解除劳动合同证明书
2015/06/17 职场文书
nginx刷新页面出现404解决方案(亲测有效)
2022/03/18 Servers
JS精髓原型链继承及构造函数继承问题纠正
2022/06/16 Javascript