areaEditor.js 的演示界面
Tab 键向右缩进 | 按 Tab + Shift 向左缩进 | 智能填充括号*注:本网站已经全局开启了 areaEditor.js,所有 <textarea> 都可以缩进和补全括号。
介绍
areaEditor.js 是个根据 JavaScript 里几个关于操纵 HTML 原生文本编辑框元素 <textarea> API 而开发的增强版 <textarea> 运行库。它只有不到 2kb 大小,但它能大大增强您在编辑代码时的体验。(纯 ES5 代码,兼容一些老旧浏览器)
具体详情,可进一步阅读这篇文章。
功能
1. 按下 TAB 来控制左右缩进
按下 tab 按键,会产生一个缩进单位。
另外,在下面这种情况时,按下 tab 按键,代码会向右一个单位的缩进(蓝色部分为鼠标选中的文本):
变成 ->
当然,如果同时按下 tab + shift 两个按键,会向左缩进一个单位(必须在选中文字的情况下才有效)。
2. 智能缩进检测
我们常用的缩进有三种类型:四个空格、八个空格、1 个 tab 字符 \t,那 areaEditor.js 是哪种呢?
areaEditor.js 默认的缩进类型是 4 个空格(空白编辑框时),但是它也会智能检测文档的缩进类型进行调整,以文档的第一个缩进为标准。
另外请注意,为了防止混淆,在按下删除键 backspace 时,它只会按照空格挨个删除,而不是一次删除一个缩进单位。
3. 智能填充括号
我们在键入 { } [ ] ( ) < > ' " ` 符号时,会如其他代码编辑器一样进行自动补全。
如果我们依然继续按动键盘,进行手动补全,那么它会忽略自动补全。
4. 闭合符号向右缩进
第一种情况,如果我们光标位于 { } [ ] ( ) < > 这 4 种闭合符号之间,然后按下回车,那么它会自动添加一行,并添加一个缩进单位。如图所示:
按下回车后,
第二种情况,如果我们光标仅仅位于'{ [ ( < 这些闭合符号之后,那么它也会新添加一行,并添加一个缩进单位。
按下回车后,
代码引入方式
1. 在 github 下载
在 https://github.com/kohunglee/areaEditor 或 [单击此处下载] 下载完整的包。
2. 使用 jsdelivr 引入
我们一共有三个文件,分别的 开发版(带注释 raw 版 9.4kb)、普通压缩版(4.06 kb)、极致压缩版(1.98kb)。
它们三者的 jsdelivr 地址分别为:
https://cdn.jsdelivr.net/gh/kohunglee/areaeditor/src/areaeditor.2.0.js
https://cdn.jsdelivr.net/gh/kohunglee/areaeditor/src/areaeditor.2.0.min.js
https://cdn.jsdelivr.net/gh/kohunglee/areaeditor/src/areaeditor.2.0.x.min.js
激活方式
我们在 HTML 中可以这样使用:
<textarea></textarea>
<script src="https://cdn.jsdelivr.net/gh/kohunglee/areaeditor/src/areaeditor.2.0.x.min.js" integrity="sha256-sP3tIYbNNHejSjhs3X0SBLULz54YEbR3g1dSJMvpCME=" crossorigin="anonymous"></script>
<script>
var editor = new AreaEditor('textarea', {indentType : { type: 'space', count: 4 }});
</script>
其中,AreaEditor() 的参数和 document.querySelectorAll() 的参数一样。
var editor = new AreaEditor('textarea'); // 选中所有的 textarea 元素
var editor = new AreaEditor('.code-editor'); // 选中所有 class 为 code-editor 的 textarea 元素
var editor = new AreaEditor('#code-editor'); // 选中 id 为 code-editor 的 textarea 元素
var editor = new AreaEditor('#code-editor', {indentType : { type: 'space', count: 4 }); // 后面可以配置缩进,type 里可以有 space 和 tab 两种参数,现在是 4 个空格
editor.indentType.type = 'tab'; // 这样可以动态修改缩进
为什么要这样?
我们在设计网页时,有时会遇到在网页页面上编辑代码的情况,我们通常直接放个原生编辑框 <textarea>,但这样并不好用,另一种是引入成熟的代码编辑器,如 Code Mirror 或 Ace,但它们体积太大了,即便缩减版也动辄 100kb 以上,很多简单的页面没这个必要。
其实,我们只是编辑个代码而已,像语法高亮、自动补全、括号提示等等并不是刚需,缩进才是刚需,此时我们只需解决这个问题,网页的体验感也会大大增强。
为了保证代码体积的简练,之后可能不会添加新的功能,只会将如上四种功能完善。
个人卡片
❤️ 永远承诺:本网站,所有字均为人工手敲!无一字为 AI 生成(除非标注)!是站长 AI 时代的净土!放心!❤️
搜索(美国最新搜索技术)
猜猜这是什么?
最新评论
-
南香香 2026-11-07 08:23
「无法加载付款表单」这报错太磨人,原来是...
-
南香香 2026-11-07 08:16
「无法加载付款表单」这报错太磨人,原来是...
-
海风心情 2026-11-07 06:27
换账单地址加美国IP这招管用,之前卡在付...
-
姓名打分测试 2026-11-06 23:08
文章不错支持一下,非常喜欢
-
绘文字图鉴 2026-11-06 22:40
您好,想和您的网站申请交换友情链接。 我...
-
南香香 2026-11-05 08:21
5w star 确实火,magpie 没...
-
枫叶 2026-11-04 02:06
楼主能帮宣传个人刚创建的 AI 导航站么...
-
Flora Ding 2026-11-02 11:28
用一个 DSH 插件打通多家大模型,听着...
-
独元殇 2026-10-27 22:47
@ywish:是的,请咸鱼大佬们帮你转
-
独元殇 2026-10-27 22:46
@Knowhy:好滴!已经添加,多多交流...
-
海风心情 2026-10-26 21:57
这个工具确实实用,安装还这么简单,回头我...
-
沐阳 2026-10-26 17:44
PC玩家狂喜!希望这个项目能持续完善,以...
-
沐阳 2026-10-26 16:37
这个工具太实用了,做AI短剧终于不用瞎猜...
-
Knowhy 2026-10-26 14:47
站长你好,我是 Knowhy 的站长。一...
-
ywish 2026-10-25 20:47
wise注册现在是不是需要往里面充钱了呀
-
Miles 2026-10-25 14:27
我一直以为哥飞他们出海是做电商的,原来是...
-
海风心情 2026-10-25 08:18
这个项目听起来真有意思,以后或许真的不用...
-
renyiqiu 2026-10-24 17:30
看到后面的条件就知道不只是冷水了
-
独元殇 2026-10-24 15:12
@2broear:说实话,不喜欢。只是发...
-
2broear 2026-10-24 10:36
你喜欢吗🤭
-
海风心情 2026-10-24 08:59
互联网让普通人也能帮到全世界的人,AI又...
-
海风心情 2026-10-23 12:56
读完后很有共鸣,确实很多人嘴上说想赚钱,...
-
Harries 2026-10-23 11:24
十几块的 ESP32 就能做全屋广告拦截...
-
SGER 2026-10-21 16:30
强大,现在taptap上AI写的游戏太多...
-
Ksable 2026-10-20 07:18
收藏了
-
博客大全 2026-10-19 23:37
PowerShell终于有更顺手的替代方...
-
独元殇 2026-10-19 22:06
@Lvtu:哈哈,这个是误解。此 AI ...
-
Lvtu 2026-10-16 11:58
其实拼夕夕有AI搜索和AI试衣等,推荐算...
-
念念 2026-10-10 22:46
Muse 两周下载 250 万次,这爆发...
-
念念 2026-10-10 22:46
K 型分化这词用在 AI 时代,挺贴
-
念念 2026-10-10 22:46
月搜索量 100k 这赛道门槛,听着就不...
-
念念 2026-10-10 22:46
fMRI 里新奇性抬高回报预期,挺有意思
-
念念 2026-10-10 22:46
时钟造焦虑、镜子造自恋,这对照挺刺
-
念念 2026-10-10 22:21
pdftobrainrot 一年广告约 ...
-
念念 2026-10-10 15:05
890 字节/token
-
Alex 2026-10-10 11:59
希望大鲸鱼可以追上oa。opus55的前...
-
饿 2026-10-10 09:59
太干了
-
念念 2026-10-09 19:12
Paypal 提现大于 1300 刀再提...
-
念念 2026-10-09 19:02
bankstatementconvert...
-
马斯克 2026-10-06 20:28
如果你在杭州随便理个发会更加惊讶的
分类
存档
链接
- 巨欢迎友链(无要求,好人就行,除灰产站)
- 动不动就删友链的那种牛逼的人滚远点!
- emlog.net
- 开往 travellings
- 十年之约
- 老麦博客
- 开放世界地带
- 小鱼量化
- 小王子
- 沉舟侧畔 Blog
- 2broear
- 八咫烏
- Blinds Timer
- 七云's Blog
- 灰常记忆
- 豆沙工作室
- 绘文字图鉴
- Java 小强技术博客
- 爱思路
- 吃猫的鱼
- WALLSTREET小白
- 瀚海星辰
- GoodBoyboy
- leorain
- BioMooc
- 浅水虾出海网
- Knowhy Lab
- 熊猫游戏出海
- 敲代码的卡卡罗特
- Lanke's blog
- 秘柯云仓
- 蒙需
- LongLuo's Life Notes
- Weichky's Blog
- 超腾开源
- 秋风于渭水
- 大佬论坛
标签
最新文章
热门文章
访客信息
微信公众号
