codemirror 小功能的添加(点击删除默认的提示语)

最近要写一个简单的html网页的日志规范,领导建议用一些目前流行的code代码高亮度显示插件(javascript)等。

然后,就开始对各种不通的code代码显示插件的研究。

研究的目标:

(1)有一个纯文本显示(highlight ,codemirror 都可以实现);

(2)一个输入代码高亮度显示(codemirror 实现)。

首先,研究的是highlight,highlight 是javascript+css 控制完成的代码提示,功能很强大。而且使用方便。主要体现在:

(1)只需要引入一个js 脚本(highlight.pack.js)

(2)有大约50多个不同的theme,可以根据自己的需求来使用,而且只需引用一个主题的css文件即可。

(3)在打算高亮度显示的code(红色标注),用<pre><code class="json">code</code></pre>。

但是 highlight 插件目前没有找到可以运用到textarea 的方法。

所以后来研究了codemirror codemirror 的引用方法。

js文件

<script src="dist/codemirror-4.11/lib/codemirror.js"></script> 主js 文件

<script src="dist/codemirror-4.11/addon/edit/matchbrackets.js"></script>

<script src="dist/codemirror-4.11/addon/comment/continuecomment.js"></script>

<script src="dist/codemirror-4.11/addon/comment/comment.js"></script>

<script src="dist/codemirror-4.11/mode/javascript/javascript.js"></script> 因为使用的是javascript mode

css 文件

<link rel="stylesheet" href="dist/codemirror-4.11/lib/codemirror.css"> 主css 文件

<link rel="stylesheet" href="dist/codemirror-4.11/theme/monokai.css"> 主题

下面是要输入代码的区域:

<textarea id="code" name="code" style="display: none;">code</textarea>

执行 js 代码:

var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
       lineNumbers: true,
       continueComments: "Enter",
matchBrackets: true,
       extraKeys: {"Ctrl-Q": "toggleComment"},
       mode: {name: "javascript",globalVars: true,json:true}
     });

为提示输入的内容,设置默认提示语“请输入要检验的日志”,点击光标却在提示语之后,为了使得点击删除默认提示语,光标回到首行。

针对该功能,在 codemirror.js 中做了一点小手脚。

enventInWidget(display,e){
var n1=e_target(e);
if($(n1).text()==‘请输入要检验的日志‘){
$(n1).text(‘‘);
}
}

定义全局flag

var flag=0;
在buildLineContent(cn,lineView,ii){
if(ii>0&&flag==0){
lineView.line.text=lineView.line.text.substring(lineView.line.indexOf(‘请输入要检验的日志‘+9,lineView.line.text.length));
}

其中,buildLineContent函数已加入一个变量ii  ,getLineContent函数也加入一个变量ii,ii=0 表示

首次加载,ii=1 表示第一次输入,即要删除默认提示语。

时间: 2024-08-03 10:16:14

codemirror 小功能的添加(点击删除默认的提示语)的相关文章

点击删除弹出提示是否删除代码

点击删除弹出提示是否删除代码:在一些应用中,会有删除功能,比如删除新闻等功能,在这些功能中,当点击删除的时候,一般会弹出提示窗口,提示是否要删除指定的内容,以防止出现误操作现象,下面就通过代码实例介绍一下,如何弹出这个提示窗口.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content=&quo

input点击删除默认value,以及只能输入数字,删除,tab

/*inputhastip类绑定事件*/ $('.inputhastip').css("color", "#999"); $('.inputhastip').bind({  focus:function(){   if(this.value==this.defaultValue)   {    this.value="";    $(this).css("color", "#333");   }  }, 

点击删除弹出提示框,是否删除代码

删除一般来说是比较严谨的,要避免误删,尽量删删除按钮的时候,做一个删除时候的提示,再去选择是否删除 function Delete(){ if(confirm("是否缺人删除?")){ //这里写删除的代码 alert("确认删除"); }else{ alert("取消删除"); } }

Java实现点击一个Jlabel增加一个Jlabel的小功能

当界面生成以后,自己想做一个点击一个Jlabel增加一个Jlabel,即类似于QQ的添加好友以后可以及时的加进一个好友.自己做了好久,发现不能及时刷新.在网上查了一下,然后自己研究了一小会.发现需要validate这个函数重新布局.写了一个这个小功能. package qq.client.tools; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.JFrame;

小功能——类似微信里,评论内容里面,点击每个人的用户名进入个人主页

项目里的朋友圈页面,每幅图片的评论内容里面,有不同的用户进行评论,起初想法是点击用户名直接进行回复,后来看微信都是点击评论内容进行回复评论的发起人,这个好做,把这个textview绑定一个监听器就ok了 后来再一想,如果要实现类似微信点击用户名就进入用户的主页,怎么让用户名可以点击呢? 现在父布局下面在new一个水平布局的linearlayout,然后根据把每个用户.包括评论内容都设置进textview里面,然后通过linearlayout的addview()方法,把这些textview添加进去

MVC5 网站开发之六 管理员功能之添加、删除、重置密码、修改密码、列表浏览

  一.安装插件. 展示层前端框架以Bootstrap为主,因为Bootstrap的js功能较弱,这里添加一些插件作补充.其实很多js插件可以通过NuGet安装,只是NuGet安装时添加的内容较多,不如自己复制来的干净,所以这里所有的插件都是下载然后复制到项目中. 1.Bootstrap 3 Datepicker 4.17.37 网址:https://eonasdan.github.io/bootstrap-datetimepicker/ 下载并解压压缩包->将bootstrap-datetim

用angular方法简单实现了吃了么搜索小功能,还不太完善,后续会继续添加新内容。

最近接触了Angular框架,今天用里面的http请求方法做了一个小的案例,是一个查询地名获取附近美食的小案例.还不太完善,后面面有时间会继续添加新的内容.这个小案例没有用到任何的jQuery与原生js方法. 先上HTML结构代码与HTML结构中的angular指令. <body ng-app="app"> <div ng-controller="con" id="con"> <h1>吃了么</h1>

robotium脚本封装为APK,实现脱离手机数据线,使用按钮点击控制用例运行的小功能

最近一直在完成一些robotium的小功能,用来更方便的完成一些小功能的测试,或者可以说用来娱乐吧,幸得群内大神思路指点,就此引申,终于把这个功能得以实现 ---------------将robotium脚本封装为APK,使用按钮控制用例运行覆盖程度,测试结果以简单的xml文件输入到手机SD卡目录下---------------------- 废话不多说,转正题: 一.首先明确一点,这篇文章,是在你所编写的robotium脚本运行无异常的前提下实施 二.阐明思路: 1.我们需要一个运行良好的,逻

添加多用户或删除多用户小脚本

写了个可以添加多用户,删除多用户的小脚本,用户之间用空格隔开就可以,下面直接上代码: #!/bin/bash #discription:This file can add users or delete users. #author:Zhai #version:0.1 read -p "You want to add users or delete users,please choose (add|delete|quit):" choose Choose=`echo $choose |