提问人:Miodek 提问时间:11/10/2023 更新时间:11/10/2023 访问量:56
在可编辑元素中动态插入跨度
Dynamic span insertion in an editable element
问:
我正在尝试用打字稿制作一个简单的语法荧光笔。有没有办法将 css 插入到具有给定索引的文本中?
假设我有一个文本区域,我希望 0 到 10 的文本颜色变为红色。 这甚至可能吗?
答:
1赞
Łukasz D. Mastalerz
11/10/2023
#1
const textarea = document.getElementById('yourTextareaId') as HTMLTextAreaElement;
function applyHighlight(start: number, end: number, color: string) {
const before = textarea.value.substring(0, start);
const highlighted = `<span style="color: ${color}">${textarea.value.substring(start, end)}</span>`;
const after = textarea.value.substring(end);
textarea.innerHTML = before + highlighted + after;
}
// forExsmple
applyHighlight(0, 10, 'red');
评论