gpt4 book ai didi

javascript - 如何使用 select 方法选择文本的一部分?

转载 作者:行者123 更新时间:2023-11-30 20:12:33 25 4
gpt4 key购买 nike

我想用 JavaScript 选择文本的一部分。我想根据不使用节点的长度指定范围。例如:我有文本“AB DDSD”,我想从 0-3 中进行选择。我不能用 span 之类的元素包装它,因为阿拉伯字母不会连接。

下面的示例选择了 foo 类中的所有文本,但如何为其指定范围?

var selection = window.getSelection();
var txt = document.getElementsByClassName("foo");
var range = document.createRange();
range.selectNodeContents(txt);
selection.removeAllRanges();
selection.addRange(range);

我愿意使用其他方法代替 select。我的目标是为 p 标记中的某些字符着色,但不能使用任何元素将其包装起来。如果我只将 سس 的一个字符换行,那么它会变成 سس

最佳答案

实际上保留了连字:

let t = document.getElementById('test');
t.innerHTML = `<span style="color: red">${t.textContent.slice(0,3)}</span>${t.textContent.slice(3)}`;
<!DOCTYPE html>
<html>
<head><meta charset="utf-8"></head>
<body>
<span id="test">مرحبا بالعالم</span>
</body>
</html>

这可能与浏览器的字体和渲染有关,但这是我的样子:

enter image description here

考虑到 purpose,我不认为添加零宽度空间是解决方案.

关于javascript - 如何使用 select 方法选择文本的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52249307/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com