js 给选中的文字添加颜色、替换文字内容...,选中状态去除后更改还在(document.execCommand)

操作说明

使用document.execCommand

先选中文字后点击按钮更改选中文字状态

html 复制代码
<!--点击的按钮不能为div,目前确认button可用-->
<button @click="f">操作</button>

常用代码片段

替换选中文字的内容

js 复制代码
function f() {
  const selectDom = document.getSelection().focusNode.parentElement // 获取包裹文字的元素dom
  selectDom.contentEditable = String(true) // 开启元素可编辑状态,document.execCommand需要
  document.execCommand('insertText', false, '***') // document.execCommand只能操纵可编辑内容区域的元素
  selectDom.contentEditable = String(false) // 重置编辑状态
}

更改选中文字的颜色,失去选中状态还保留颜色值

js 复制代码
function f() {
  const selectDom = document.getSelection().focusNode.parentElement
  selectDom.contentEditable = String(true)
  document.execCommand('foreColor', false, 'yellow')
  selectDom.contentEditable = String(false)
}
相关推荐
初心未改HD1 分钟前
Go语言Slice切片底层原理深度解析
开发语言·golang
菜鸟小码6 分钟前
MapReduce 核心思想:分而治之,大数据处理的智慧之源
前端·javascript·mapreduce
程序员三明治8 分钟前
【AI】Java 调用大模型 API 实战:从 OpenAI 协议到 SiliconFlow 流式响应解析
java·开发语言·人工智能
世界尽头与你9 分钟前
Go 语言高级函数特性
开发语言·golang
小小de风呀14 分钟前
de风——【从零开始学C++】(三):类和对象(中序):默认成员函数全解析
开发语言·c++
凤头百灵鸟18 分钟前
Python语法进阶篇 --- 单例模式、魔法方法
javascript·python·单例模式
龙俊杰的读书笔记33 分钟前
一文读懂python并发&并行编程--以xinference框架应用为例
开发语言·网络·python
liulilittle35 分钟前
递归复制搜索所有的lua文件到指定目录
java·开发语言·lua·cmd
一袋米扛几楼9839 分钟前
【前端开发】基于TypeScript打破 React 黑盒——组件的“工厂心智模型”与源码解剖
javascript·react.js·typescript
Gofarlic_oms11 小时前
Allegro高级功能模块许可证管理注意事项
运维·服务器·开发语言·matlab·负载均衡