- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
目标:我正在使用 codemirror作为编辑。我要
问题:
JSFIDDLE: https://jsfiddle.net/bababalcksheep/p7xg1utn/30/
代码:
$(document).ready(function() {
//
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
mode: "text/html",
lineNumbers: true,
});
//
function search(val) {
var cursor = editor.getSearchCursor(val);
while (cursor.findNext()) {
editor.setSelection(cursor.from(), cursor.to());
console.log('found at line ', cursor.pos.from.line + 1);
}
}
//
$('#search').click(function(event) {
event.preventDefault();
search(/^alpha|^beta/);
});
//
});
最佳答案
调用setSelection
一次只能高亮一个连续的子串。相反,您可以使用 markText方法,传入 cursor.from()
和 cursor.to()
以获取要突出显示的位置:
$(document).ready(function() {
var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
mode: "text/html",
lineNumbers: true,
});
function search(val) {
var cursor = editor.getSearchCursor(val);
while (cursor.findNext()) {
editor.markText(
cursor.from(),
cursor.to(),
{ className: 'highlight' }
);
}
}
//
$('#search').click(function(event) {
event.preventDefault();
search(/^alpha|^beta/);
});
});
.CodeMirror {
border-top: 1px solid black;
border-bottom: 1px solid black;
height: 200px;
}
.highlight {
color: orange;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.44.0/codemirror.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.44.0/addon/search/searchcursor.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.44.0/codemirror.min.css">
<div class="container">
<p><strong>Objective:</strong></p>
<p>Find/search and highlight both words <strong>alpha</strong> and <strong>beta</strong> in codemirror editor</p>
<button id="search" type="button" class="btn btn-primary">Search and highlight</button>
<br><br>
<textarea id="code" name="code" rows="8">Text line
alpha 1
Text line
Text line
alpha 2
Text line
Text line
beta 1
Text line</textarea>
关于javascript - codemirror:无需对话即可搜索并突出显示多个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54957259/
使用代码镜像,我们可以折叠代码。 我想用花括号折叠所有代码。我发现了这种方法 我如何折叠整个代码,这是我的HTML脚本: window.onload = function() { var te =
我想将“Alt-Space”键映射添加到 codemirror,然后在按下键时执行特定功能。我无法使用 . cm.addKeyMap 我应该在哪里编写此函数,以便可以将键映射绑定(bind)到特定函数
我想重置 Codemirror 编辑器的所有内容。理想情况下,这应该清除 textarea,删除所有标记并清除历史记录。 实现这一目标的最佳方法是什么? 最佳答案 cm.setValue(""); c
我知道你用 editor.setValue(""); 设置一个值,但如何在 CodeMirror 中附加? IE: editor.appendText();? 最佳答案 使用 replaceRang
CodeMirrors 全屏模式的文档似乎有点稀疏。例如,我如何告诉它监听键以激活全屏?或者如何使用按钮切换全屏? 为了他人的利益,下面是我找到的解决方案。 最佳答案 这将获得选项值: editor
我需要在 CodeMirror 中当前行号旁边插入一个新行。 我查看了文档,但没有找到任何关于在行尾附加任何内容的信息。 请帮忙。 :( 最佳答案 从光标位置获取当前行,并对其进行操作。这应该这样做(
是否可以在 中显示隐藏字符(如回车符)? Codemirror 文本编辑器 ,但我没有在它的文档中找到任何关于它的配置引用。有可能这样做吗? 最佳答案 回车符由 CodeMirror 专门解释(当它自
CodeMirror 是实现单行表达式编辑器的好选择吗?我无法从手册(或我查看的问题)中弄清楚 CodeMirror 是否可以配置为执行以下操作: 不显示滚动条(如果太长,文本应该向左滑动) 忽略插入
来自 http://codemirror.net/doc/manual.html ,我只找到getRange() , undo()、redo() 等,我找不到 cut()、copy() 和 paste
我正在构建一个简单的代码编辑器来帮助 children 学习 HTML。我试图添加的一个功能是,当用户将鼠标悬停在他们呈现的代码上时(在 iframe 中),编辑器中相应的 HTML 代码会突出显示。
我正在构建一个简单的代码编辑器来帮助 children 学习 HTML。我试图添加的一个功能是,当用户将鼠标悬停在他们呈现的代码上时(在 iframe 中),编辑器中相应的 HTML 代码会突出显示。
我正在构建一个供个人使用的小型 extjs 5.1 应用程序,旨在保存我的 extjs 应用程序中使用的函数/方法的示例。 在 Navaneeth-Kesavan 和 Tarabass 的帮助下,我在
我正在使用CodeMirror 5.1。 This article显示 C# 语法突出显示,但显然解决了 CodeMirror 过时版本的问题。 问题:如何使用 CodeMirror 实现真正的 C#
我正在使用CodeMirror 5.1。 This article显示 C# 语法突出显示,但显然解决了 CodeMirror 过时版本的问题。 问题:如何使用 CodeMirror 实现真正的 C#
我正在写一些 cypress测试 Codemirror 编辑器。我用过 cypress在输入字段中输入。 我正在尝试实现 cy.type()在 CodeMirror 编辑器中。我在 codemirro
所以我检查规范化以将规范化库添加到 Codemirror 中。 我检查 jQuery,并在规范化后添加 jQuery 源: 但是如果我取消选中标准化,我希望它删除标准化链接,如果我再次选中它,我
https://github.com/angular-ui/ui-codemirror 我需要用 Angular 制作一个语法高亮器并将结果保存在数据库中。 我正在使用 ui-codemirror,但
有人为codemirror做了'htmlmixed' + 'Velocity'模式吗?或者任何人都可以建议如何实现这一目标? 最佳答案 我能够使用 overlay.js 插件轻松实现这一点: Code
我正在将 CodeMirror 实现到我的 Nuxtjs/Vuejs 应用程序中的文本区域之一。我想根据 XML 美化 textarea。 有时 CodeMirror 工作正常,但有时当我重新加载页面
我正在尝试在 React/Redux/TS 应用程序中启用 react-codemirror 组件的 linting 插件。正常的 codemirror 东西工作正常,语法突出显示,行号等。但是,启用
我是一名优秀的程序员,十分优秀!