gpt4 book ai didi

Javascript window.getSelection() 替代方案

转载 作者:行者123 更新时间:2023-12-01 05:45:45 29 4
gpt4 key购买 nike

我正在尝试手动选择文本。 window.getSelection().getRangeAt(0); 行用于窗口选择的文本。但我希望这个由我预先选择。

foo=function()
{
var selection= "Lorem ipsum dolor"; // Instead of this line window.getSelection().getRangeAt(0);
var selectedText = selection.extractContents();
var span= document.createElement("span");
span.style.backgroundColor = "yellow";
span.appendChild(selectedText);
selection.insertNode(span);
}

<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
<input type="button" onclick="foo();" value="FOO"/>

最佳答案

有github项目findAndReplaceDOMText 。一个可能有用的 JavaScript 库:它在给定 DOM 节点中搜索正则表达式匹配,并用您可以指定的节点或文本片段替换或包装每个匹配。

您还可以使用window.find()/createTextRangeThis answer展示了如何做。它将匹配跨越元素边界的文本,并使用 document.execCommand() 为您突出显示。

最后 - 如果我查看您的示例并且您只想替换文本节点的特定片段 - 您可以使用如下正则表达式:

element.innerHTML = element.innerHTML.replace(
/Lorem ipsum dolor/gi,
'<span class="f">$0</span>'
);

关于Javascript window.getSelection() 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26980987/

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