用jquery突出显示textarea中的代码的方法?

发布于 2024-09-11 00:03:02 字数 55 浏览 11 评论 0 原文

有没有什么好的和合乎逻辑的方法来通过 jQuery 突出显示文本区域内的代码?如果有请分享一下。

Is there any good and logical ways to highlight code inside textarea via jQuery? If there is, please share.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

书信已泛黄 2024-09-18 00:03:02

您可以使用 CodeMirror http://codemirror.net/

...用 JavaScript 为浏览器实现的多功能文本编辑器。它专门用于编辑代码,并附带多种语言模式插件,实现更高级的编辑功能。

丰富的编程 API 和 CSS 主题系统可用于自定义 CodeMirror 以适合您的应用程序,并使用新功能对其进行扩展...

You could use CodeMirror http://codemirror.net/

...a versatile text editor implemented in JavaScript for the browser. It is specialized for editing code, and comes with a number of language modes and addons that implement more advanced editing functionality.

A rich programming API and a CSS theming system are available for customizing CodeMirror to fit your application, and extending it with new functionality...

誰ツ都不明白 2024-09-18 00:03:02

不,没有。您可以将样式应用于整个文本区域,但不能应用于其中的部分文本。

您需要一些可以替代文本区域的东西, 这里是其中一些的列表。

No, there isn't. You can apply styles to the entire textarea, but not part of the text in it.

You would need something that works as a replacement for the textarea, here is a list of some.

会傲 2024-09-18 00:03:02

您可以使用以下搜索代码突出显示文本的一部分:

<script type="text/javascript">
    $(document).ready(function() {
        $("textarea").highlightTextarea({
              words: ["first word","an other word"]
        });
    });
</script>

上查找有关在文本区域中突出显示的更多信息将文本突出显示到文本区域

You can highlight a part of a text with the follow search code:

<script type="text/javascript">
    $(document).ready(function() {
        $("textarea").highlightTextarea({
              words: ["first word","an other word"]
        });
    });
</script>

Find more about highlighting in a textarea on Highlight text into a textarea

抽个烟儿 2024-09-18 00:03:02

如果您指的是 SQL、PHP 等代码,请查看 Codepress。它是一个实时的语法突出显示编辑器,用 Javascript 编写。

编辑:

如果您更喜欢更现代且积极维护的替代方案,您应该查看王牌

If by code, you mean SQL, PHP etc., take a look at Codepress. It's a real-time, syntax highlighting editor, written in Javascript.

Edit:

If you'd prefer a more modern and actively-maintained alternative, you should look at Ace.

千里故人稀 2024-09-18 00:03:02

我也在寻找实时语法着色的最佳解决方案,所以我找到了一个比 textarea 更旧的可用的古老软件(2007)(女巫也在工作):

1.Codepress

https://sourceforge.net/projects/codepress/files/

然后在index.html中html 第 117 行替换为

<textarea spellcheck="false" id="codepress2" class="codepress javascript linenumbers-off" style="width:700px;height:200px;" wrap="off">

will 具有实时语法着色,如 web 含义中的 notepad++ / editplus
小代码可以“重新绘制”,“重新忘记”到这个年龄......

这取决于你......

2.MIT LDT =极简语法着色
https://github.com/kueblc/LDT

..我所做的所有测试都在自定义 < strong>apache php 8.1 mariadb 自定义服务器(远程 buggy/spies 免费),所以这两个工作正常!

所以答案是:如果您愿意重新编码,这些可以在作者接受的情况下在 jquery 中重新编码(检查许可证以获取更多信息)

i was looking too for a live syntax coloring best solution so i found a working , ancient software(2007) that is older than textarea(witch is working too) :

1.Codepress

https://sourceforge.net/projects/codepress/files/

then in index.html the line 117 replaced with

<textarea spellcheck="false" id="codepress2" class="codepress javascript linenumbers-off" style="width:700px;height:200px;" wrap="off">

will had live syntax coloring like notepad++ / editplus in web meaning
small code could be "repainted" , "reforget" to this age ...

it's up to you ...

2.MIT LDT =minimalist syntax coloring
https://github.com/kueblc/LDT

..all tests i did are in a custom apache php 8.1 mariadb custom server (remote buggy/spies free) so these two works fine!

so the answer is : in case you open to recoding something these can be recoded in jquery with the author accept (check the licenses for more info)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文