是否可以借助 Javascript 选择文本(就像用户将鼠标拖过浏览器中的 HTML 单词一样)?
我有一些 JS 代码,可以在 HTML 表中搜索用户的字符串输入。然后,我希望这段代码能够选择/关注这个单词(如果找到)。
var targetTable = document.getElementById("accountTable");
for (var rowIndex = 1 + searchStart; rowIndex < targetTable.rows.length; rowIndex++)
{
var rowData = '';
rowData = targetTable.rows.item(rowIndex).cells.item(0).textContent;
if (rowData.indexOf(str) != -1)
{
//select word and focus on it in user's browser?
}
}
最佳答案
您可以将找到的字符串替换为相同的字符串,但位于具有特定类的范围内。
例如,如果搜索词是“alpha”:
<td>The alphabet is long.</td>
<td>The <span class="highlighted">alpha</span>bet is long.</td>
当搜索发生变化时,您必须将所有突出显示的范围恢复为纯文本。
如果您想实际使用浏览器选择进行选择,这里讨论的方法有限:Programmatically select text in a contenteditable HTML element?
关于javascript - 通过 Javascript 选择 HTML 表格中的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15166590/