需要 JAVASCRIPT 或 JAVA 解决方案
我正在寻找的解决方案可以使用 java 或 javascript。我有一个字符串中的 html 代码,所以我可以在使用 java 之前或之后使用 javascript 操作它。
问题
无论如何,我必须用标签包装每个单词。例如:
<html> ... >
Hello every one, cheers
< ... </html>
应该改为
<html> ... >
<word>Hello</word> <word>every</word> <word>one</word>, <word>cheers</word>
< ... </html>
为什么?
这将帮助我使用 javascript 选择/突出显示一个单词。似乎唯一的方法是使用我在JAVASCRIPT 提示中添加的函数 highlightElementAtPoint :它只是找到某个 x,y 坐标的元素并突出显示它。我认为如果每个单词都是一个元素,那将是可行的。
我们的想法是使用这种方法来允许我们检测 android WebView 中突出显示的文本,即使这意味着使用扭曲的突出显示方法。多想一下,你会发现很多其他的应用程序。
JAVASCRIPT 提示
我正在使用以下代码突出显示一个单词;但是,这将突出显示属于某个标签的整个文本。当每个单词都是一个标签时,这将在某种程度上起作用。如果有一个替代品可以让我在某个位置突出显示一个单词,那也是一个解决方案。
function highlightElementAtPoint(xOrdinate, yOrdinate) {
var theElement = document.elementFromPoint(xOrdinate, yOrdinate);
selectedElement = theElement;
theElement.style.backgroundColor = "yellow";
var theName = theElement.nodeName;
var theArray = document.getElementsByTagName(theName);
var theIndex = -1;
for (i = 0; i < theArray.length; i++) {
if (theArray[i] == theElement) {
theIndex = i;
}
}
window.androidselection.selected(theElement.innerHTML);
return theName + " " + theIndex;
}