首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从零开始,开发一个 Web Office 套件(7):新问题—— Click 事件 z-index

这是一个系列博客,最终目的是要做一个基于 HTML Canvas 、类似于微软 Office Web Office 套件(包括:文档、表格、幻灯片……等等)。...: 找到距离点击位置最近行 在此行内找到距离点击位置最近字符 在此字符左侧或者右侧插入光标 为了实现这个feature,我们就要监听编辑器空白处click事件。...将其传入: 效果: 2.19.1 Fix bug 不过,细心读者会发现一个问题:当我们点击最左侧区域,试图在第二行第一个字符前插入光标,结果光标跑到了第一行末尾。...要解决这个bug,只需要将赋值相关代码从Paragraph挪到SoftLine: 效果: 2.19.2 Fix: 光标在不同位置粗细不一 细心观察上图同学会发现一个样式问题:光标在不同位置时...,其粗细肉眼可见地不一致。

9930
您找到你想要的搜索结果了吗?
是的
没有找到

效率工具Markdown

它允许人们使用易读易写纯文本格式编写文档,然后转换成有效XHTML(或者HTML)文档。这种语言吸收了很多在电子邮件已有的纯文本标记特性。...转义字符 Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通符号: 案例 名称 列表 元祖 字典 集合 英文 list tuple dict set 表示 [] () {key1:value1...,key2:value2} {,,,} 特点 不需要具有相同类型 元祖元素不能修改 键值对形式 无序不重复元素列 ---- 使用技巧 技巧一 如何在序列表之后插入代码块。...紧接上一步,出现子序号1时,我们按下删除把子序号删除掉,保持删除后光标位置不要动 在上一步删除操作结束后,我们直接在光标处开始使用代码块```languageType语法正常插入自己代码。...到这里,你已经成功在序号1后插入一段代码块了,那么我们光标移出代码块位置,直接按下回车 你会发现它会自动工具上一条序号大小自动排版下一个序号,也就是序号2,到此为止,我们重复上面的步骤,就可以如此往复在每一个序号之后插入代码块

3.6K20

流程图之美:手把手教你设计一个流程图

前言流程图是一种图形化工具,主要用于表示完成一项任务流程、工作流或具体方法。它通过箭头连接各种符号来展示流程步骤,并且通常从一个明确起始点出发,按照一定顺序和路径进行展开。...4、点击菜单【插入】,选择【形状】,然后在形状下拉框中选择【圆角矩形】。5、在形状,可以设置样式,颜色,线条样式等,我们先创建一个流程图中开始节点,然后分别修改它颜色、字体和文本。...设置颜色代码为61,113,250设置字体加粗设置文本居中6、插入矩形后,接下来插入线条,点击【插入】,选择【形状】,然后在形状下拉框中选择【线条】。...然后调整箭头位置、颜色和粗细,如下所示:7、最后调整箭头格式,实现效果如下图所示:总结以上就是实现一个流程图全过程,如果您想了解更多信息,欢迎点击这篇参考资料查看。...扩展链接:轻松构建低代码工作流程:简化繁琐任务利器 优化预算管理流程:Web端实现预算编制利器 如何在.NET电子表格应用程序创建流程图

9710

在Word插入一个可以勾选和取消方框

操作步骤如下: (1)在Word开发工具菜单栏,选择带勾号复选框,插入到word。 此时复选框既可以勾选,也可以取消勾选,但是勾选后是叉号(×),不是我们要勾号(√)。...这样,点击复选框后,就是我们想要勾号。 延伸阅读: 如果不使用控件箱带勾号复选框,如何在Word插入一个带勾号方框呢?下面介绍两种方法。...(1) 直接插入Wingdings 2符号光标定位于需要插入勾选框位置,选择【插入】→【符号】→【更多符号】。选择字体Wingdings 2,找到勾选框,然后点击插入。...(2) 字母R转为勾号 把光标定位于需要插入勾选框位置,输入大写字母R。选中字母R,鼠标右键,在菜单栏中选择需要字体Wingdings 2。点击确定,这时,R就变成了我们需要打钩样式了。...参考资料: [1] 如何在word插入一个可以勾选和取消方框(https://blog.csdn.net/qq_27445049/article/details/87883134) [2] word方框

1.9K40

vim实用笔记

命令重复上次修改 什么是修改:除了普通模式执行修改命令之外,每次进入插入模式时,也会形成一次修改。从进入插入模式那一刻起,直到返回普通模式为止,为一次修改。...+ "," + argument2 + ")"; 在插入模式下,vim会将连贯操作当成一次修改,但如果是有进行光标移动,记录只是光标移动后操作,要在 + 前后各加空格,必须移动光标。...> 高亮选区后,进行命令模式,会将选区标识为' ://,//p 操作html标签之间内容 还可以用偏移对地址进行修正 :不想包括及...所在行,可以为之加上偏移 ://+1,//-1p Ex命令地址及范围符号: 1 文件第一行 $ 文件最后一行 0 虚拟行,位于文件第一行上方...总是指向上次修改位置 gi 回到上次退出插入模式地方并进入插入模式(只在本缓冲区内) xp 调换光标之后两个字符 vim删除、复制与粘贴命令都会用到众多寄存器某一个,通过给命令加"{register

1.1K20

【方向盘】使用IDEA60+个快捷键分享给你,权为了提效(操作系统、终端篇)

在Mac也有类似的操作方式:强制退出。...,为何在CSDN编辑器里写文章(同样是编辑文本呀),怎么不好使呢?...其实,本质原因是CSDNmd编辑器是用Html画出来(这样才能显示图片、粗细、颜色嘛),而非输入组件: 这就很容易解释为何这看起来也是在浏览器里编辑文本,但fn那套组合键语义变为了页顶/...但在某些没有方向键键盘里(HHKC),这对组合键就非常有用喽。...中文并不属于此行列,换句话讲:即使成千上万中文字、中文符号都被认为是一个单词,直到遇上英文符号。因此该功能对于中文文字编辑者几乎没啥用武之地,但对于程序员真的非常非常好用!

1.4K10

PLC编程基础

2)用属性框来给梯级一个注释(将光标移动到梯级,通过内容菜单来使用属性框功能) 3)梯级注释占位符可以被插入到编译代码(如果PLC包括注释 指令属性被设置),注释也可以被保存为一个文件或者文件卡片...3)通过选择每一个符号,并且显示地址引用工具或者在图表中移动光标来检查其在程序用法。 也可以在助记符视图中查看梯形图视图。可以在助记符视图或者在梯形图编辑器显示一个梯级来输入块程序。...1)选择工程工作区PLC 对象 2)择工程工具栏切换PLC监视按钮。 3)程序执行时,可以监视梯形图中数据和控制流,例如,连接选择和数值增加。...选择工具栏取消在线编辑按钮,可以取消在确认改变之前所做何在线编辑。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。...发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

2.6K10

104型计算机键盘,电脑上pc 机104键指的是什么?「建议收藏」

在中英文文字编辑软件,此键具有换段功能,当本段内容输完,按回车键后,在当前光标插入一个回车符,光标带着该字符及后面的部分一起下移到下一行之首;在DOS命令状态下或许多计算机程序设计语言过程,按回车键确认命令或该行程序输入结束...编辑键区 编辑键区也称光标控制键区,主要用于控制或移动光标。 (1)插入键【Insert】:在编辑状态时,用做插入/改写状态切换键。...在插入状态下,输入字符插入光标处,同时光标右边字符依次后移一个字符位置,在此状态下按【Insert】键后变为改写状态,这时在光标处输入字符覆盖原来字符。系统默认为插入状态。...其主要用于数字符号快速输入。在数字键盘,各个数字符号分布紧凑、合理,适于单手操作,在录入内容为纯数字符号文本时,使用数字键盘将比使用主键盘更方便,更有利于提高输入速度。...发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

2.1K20

【实战】我是如何在输入框实现@ At功能

) 当前需求拆解 按住shift + @ 时候,弹出通知列表 选择时 @用户标签插入当前光标位置 生成@用户标签规则是:高亮、携带用户ID、一键删除信息、不可以编辑。...要兼容中文输入法时候@事件判断(:中文输入法打“哈哈哈@” 这个时候不能监听@事件 ) 中文输入法时候单独输入@时 怎么判断中文输入?...editor.config.onchange = html => { // 生成@标签时候会触发渲染、此时不要记录光标坐标 if (this.isRendering...Event.returnValue 兼容IE取消默认事件 到现在我们核心功能已经完成了。通过@人监听事件,通过我们自定义标签插入,通过getSelection获取到光标位置。...获取光标的坐标在文本位置 caret-pos 从 textarea、contentedtiable 或 iframe 正文中获取插入符号/光标的位置/偏移量 import { position, offset

2.4K20

提高开发效率之VS Code基础配置篇

"editor.cursorWidth": 2,该设置是用来控制光标粗细,目前设置大小为2。...代码片段 VS Code可以通过名为代码片段功能像编辑器插入一段指定文本,具体操作步骤为首选项->用户代码片段->新建全局代码片段。...我们可以增加一些常用文件声明注释、通用模板等代码片段,从而避免频繁复制粘贴和重复劳动。...其中有部分特定常量,可以获取输入时部分信息,:${CURRENT_YEAR}:当前年份,具体字段可以见此处说明:在写此文章时,部分1.20.0版本增加常量并不在上面的文档,具体字段为: CURRENT_YEAR...插入后效果如下: ? 插件 在左侧插件面板,可以进行插件搜索、安装与卸载。推荐插件如下: Auto Close Tag,能够在你编写HTML自动帮你加上闭合标签。

1.1K20

linux之文本编辑器

在这期间还有Sven等很多人加入,持续地改进,直到我们现在使用得很广泛6.x版本。 vim与vi相比,增加了更多特性,彩色与高亮显示,可以使我们编辑工作更轻松。...其实他只要在进入vi之后,把光标移动到要输入字符相应位置,敲一下“i”键,就可以输入了。我们会看到屏幕最下方显示“插入字样(英文为默认语言,则为Insert)。...(注意与“I”区别,数字0只移动而不插入) $ 右移光标,到本行末尾(注意与“A”区别,$只移动而不插入)。...下面内容符号“>”为键盘上大于号,“<”为键盘上小于号。...dos2unix作用可以想见是正好相反,功能是把Windows文档行尾符号转为^J,以便在Linux可以使用。命令格式也相同。

2.2K20

Web前端上万字知识总结

下面是自己学HTML+DIV+CSS+JS时学习笔记,给大家分享以下,相互学习。大二时候寒假在家无聊时候想做点事,总结了一下web前端基础东西,下面的每个字都是自己手敲。   ...1、和 标签限定了文档开始和结束点。   ...属性:     (1)  dir: 文本显示方向,默认是从左向右     (2) lang: 表示整个文档中所使用语言,en--英文,zh--中文     (3) version:定义创作文档HTML...)          coords(图像对光标敏感区域坐标)     Shape属性值:       Rect 矩形区域             circle  椭圆形区域        poly ...font-weight 定义字体粗细           font-variant 设置英文大小写转换 font 组合设置字体属性       Font-style属性值:normal 正常值

3.7K100

【详细教程】HTML、CSS 和 JS 实现一个任务管理工具-ToDoList

,定义 HTML 文档类型、语言、头部信息以及页面内容。...,并将元素盒模型设为"border-box",使得元素大小不会随着内边距和边框增加而变化。...输入框样式包括宽度、高度、字体、边框、内边距、字体颜色和字体粗细。当输入框被聚焦时,边框颜色会改变。提交按钮样式包括宽度、高度、字体、字体颜色、背景颜色、边框、圆角和光标样式。...这段代码使用了 innerHTML 属性将一个新 div 元素插入到了任务列表,其中包括任务名称和删除按钮。...${document.querySelector('#newtask input').value} 是一个 ES6 模板字符串语法,用于将输入框插入到字符串

1.3K50

web前端基础知识总结

上个寒假总结web前端一些知识点给大家分享一下 1、和 标签限定了文档开始和结束点。...属性: (1)  dir: 文本显示方向,默认是从左向右 (2) lang: 表示整个文档中所使用语言,en--英文,zh--中文 (3) version:定义创作文档HTML标准版本 2、标签标签为 (1) :标注当前文档URL全称 属性: Href:指定文档基础URL地址(相对地址都是以此基地址为基础) Target:定义打开页面的窗口 属性值:...属性:dir lang class id style title 9、插入图片  插入图片标签 属性: Src:图像源文件路径 Alt:文字提示(图像不显示时) width、hight:宽度... 字体显示大小 font-style 字体显示样式 font-weight 定义字体粗细 font-variant 设置英文大小写转换  font 组合设置字体属性 Font-style属性值:

3.8K60

2023最全vim编辑器教程(详细、完整)-编辑器之神

它具有多种模式,包括命令模式、插入模式和底行模式。在命令模式下,用户可以执行各种编辑操作,移动光标、删除字符、复制粘贴等。插入模式下,用户可以输入文本。...(搜索、替换、保存、退出、高亮等); 编辑模式:可对文件内容进行编辑; 2.vim进入和退出 进入: 语法1:vim 文件路径 //直接打开指定文件(光标位于首行或上次关闭文件时光标的所在行) 语法...再回车,不保存对文件修改并退出 3.调用外部命令 语法::q外部命令 //键盘输入英文符号:+字母q+外部命令再回车,外部命令 ls 命令等,不退出文件同时执行外部命令,执行后按任意键可以切换回文件...: i 在光标所在字符前开始插入 a 在光标所在字符前开始插入 o 在光标所在行下面另起一行开始插入 I 在光标所在行行首开始插入,若行首有空格则在空格后插入 A 在光标所在行行尾开始插入 O 在光标所在行上面另起一行开始插入...) 2.简易计算器 当编辑文件需要用计算器计算时,不需要退出文件,可以使用vim简易计算器完成计算; 使用方法: 在编辑模式下键盘ctrl+r,然后键盘输入符号=,光标就会移动到末行,键盘输入计算格式后回车

2.1K50

技术|必知必会 Vim 编辑器基础命令

命令模式下光标移动Vim快捷键允许你使用不同方式来移动光标: G–跳转到文件最后一行gg–跳转到文件首行$–跳转到行末尾0(数字0)–跳转到行开头w–跳转到下一个单词开始(单词分隔符可以是空格或其他符号...)W–跳转到下一个单词开始(单词分隔符只能是空格)b–跳转到下一个单词末尾(单词分隔符可以是空格或其他符号)B–跳转到下一个单词末尾(单词分隔符只能是空格) PgDn键–向下移动一页 PgUp...i–在光标之前插入a–在光标之后插入I–在光标所在行开头插入。当光标位于行中间时,这个键很有用A–在光标所在行末尾插入。...o–在光标所在行下面插入新行O–在光标所在行上面插入新行ea–在单词末尾插入拷贝、粘贴和删除一行yy–复制一行p/P–将内容粘贴到光标之后/之前dd–删除一行dw–删除一个单词在Vim搜索和替换匹配模式...:%s/旧模式/新模式/gc–逐个询问是否文件旧模式替换为新模式如何在Vim编辑器跳转到特定行你可以根据需求以两种方式达到该目的,如果你不知道行号,建议采用第一种方法。

1.3K40

转载 vivim 使用方法讲解

按「^」:移动到光标所在行“行首” 按「w」:光标跳到下个字开头 按「e」:光标跳到下个字字尾 按「b」:光标回到上个字开头 按「#l」:光标移到该行第#个位置,:5l,56l。 4)....复制 「yw」:将光标所在之处到字尾字符复制到缓冲区。 「#yw」:复制#个字到缓冲区 「yy」:复制光标所在行到缓冲区。...A) 列出行号 「set nu」:输入「set nu」后,会在文件每一行前面列出行号。...B) 跳到文件某一行 「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,输入数字15,再回车,就会跳到文章第15行。...G  光标移至文章最后 $  光标移动至行尾 Ctrl+f  向前翻屏 Ctrl+b  向后翻屏 Ctrl+d  向前翻半屏 Ctrl+u  向后翻半屏 i  在光标位置前插入字符 a  在光标所在位置后一个字符开始增加

1.4K20

vim常用快捷键以及方法

一、替换文本: 一个顺口令:%s###g(口头语:百分号 sg 三个#) :%s#$2#$b#g此命令是将文本2替换成b 格式 : 范围(其中 % 所有内容) s 分隔符 旧内容 分隔符 新内容...4)、然后按大写 I 5)、再插入注释符或者你需要插入符号,比如"#" 6)、再按 Esc,就会全部注释或添加了 删除:再按 ctrl+v 进入列编辑模式;向下或向上移动光标 ;选中注释部分...,然后按 d, 就会删除注释符号。...0 个字符 ^ 跳至行首第一个字符 $ 跳至行尾 gg 跳至文首 G 调至文尾 5gg/5G 调至第 5 行 gd 跳至当前光标所在变量声明处 fx 在当前行找 x 字符,找到了就跳转至...:https://solo.cjzshilong.cn/articles/2019/05/03/1556870431824.html

34220

linux 之 vi,vim 命令

则可以减少当前行缩进 使用0-Ctrl-Shift-d命令,将移除所有缩进 需要注意是,当我们输入命令 “0” 时,Vim 会认为我们要在文本插入一个 0,并在屏幕上显示输入“0”;然后当我们执行命令...:set smartindent 在这种缩进模式,每一行都和前一行有相同缩进量,同时这种缩进形式能正确识别出花括号,当遇到右花括号(}),则取消缩进形式。...此外还增加了识别 C 语言关键字功能。如果一行是以 #开头,那么这种格式将会被特殊对待而不采用缩进格式。...autoindent :set autoindent 在这种缩进形式,新增加行和前一行使用相同缩进形式 显示隐藏符号 默认不显示 :set nolist 显示 :set invlist " normal...hide is :set invlist :set nolist 使用 vim 寄存器 使用 vim 寄存器 “+p 粘贴 根本不用考虑是否自动缩进,是否 paste 模式,直接原文传递 如果想保存原寄存器内容而同时增加内容

6.9K00
领券