gpt4 book ai didi

Javascript 查找包含 HTML 的字符串中单词的位置

转载 作者:行者123 更新时间:2023-12-01 04:00:52 25 4
gpt4 key购买 nike

我得到了以下 HTML:

<div id="editable_phrase">
My
<span style="background-color: #19FC49;"> first</span>
<span style="background-color: #09AC20;"> first</span> //note 2 firsts here
<span style="background-color: #D2C3EA;"> phrase</span>
</div>

原来的短语是 - 我的第一句话

我需要找到所选单词的第一个字母在我的原始短语中的位置。因此,如果我选择(用鼠标突出显示)phrase,我需要获得 10(或其他任何值)。我尝试使用 charAt()window.getSelection 但仍然得到错误的结果。

此外,如果我选择相同的单词但在不同的位置(就像上面的例子,其中有 2 个 first 单词),我会得到与找到第一个单词的位置相同的结果,而我需要第二个。

我可以使用 jQuery。任何想法都会受到欢迎。谢谢。

最佳答案

正如您所说,您已经有了一个获取单词选择的函数,它就像 indexOf() 一样简单 - 只需将下面的 selectedText 替换为函数返回的单词,并在选择文本后执行操作:

let el = document.getElementById('editable_phrase');

let selectedText = "phrase";
let originalPhrase = el.innerText;

console.log(originalPhrase.indexOf(selectedText));
<div id="editable_phrase">
My
<span style="background-color: #19FC49;"> first</span>
<span style="background-color: #D2C3EA;"> phrase</span>
</div>

关于Javascript 查找包含 HTML 的字符串中单词的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44395840/

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