問題が発生しています。html ドキュメント内の文字列を検索したいのです。これまで window.find(..) メソッドで試しましたが、見つかった要素のノードを取得できません。たとえば、一致するすべてのテキストを強調表示できます。しかし、すべてのノードを配列に入れたいのですが、選択したテキストのノードを返すメソッドが見つかりません。次のコードは、一致するテキストのみを強調表示します。その (親) ノードを取得したいと思います。
function doSearchAdam(text) {
if (window.find && window.getSelection) {
document.designMode = "on";
var sel = window.getSelection();
sel.collapse(document.body, 0);
while (window.find(text)) {
document.execCommand("HiliteColor", false, "yellow");
sel.collapseToEnd();
}
document.designMode = "off";
} else if (document.body.createTextRange) {
var textRange = document.body.createTextRange();
while (textRange.findText(text)) {
textRange.execCommand("BackColor", false, "yellow");
textRange.collapse(false);
}
}
}
みんなありがとう!アダム