4

window.getSelection() の後に次の文字を取得する方法はありますか? 選択したテキストの後の文字がスペースかどうかを確認する必要があります...

編集:回答ありがとうございます!私は基本的にこのリンク を使用してテキストを強調表示していますが、完全な単語に限定したいと考えています。以下に提示された解決策 (Steven による) を出発点として使用しました。私は次のことがうまくいくはずだと思います

sel = window.getSelection();
var text = sel.anchorNode.nodeValue;
var index = sel.baseOffset + sel.focusOffset-1;
var isSpace = text[index] === undefined;
if (isSpace) {
alert("space");
}

(上記のリンクでは、makeEditableAndHighlight 関数呼び出しの直後にこのコードを使用しました)。

4

2 に答える 2

2

focusNode に少なくとももう 1 文字ある場合は、これが始まりです。

window.getSelection().focusNode.textContent.charAt(window.getSelection().focusOffset)
于 2013-05-25T21:32:12.157 に答える
1

このようにしてみてください:

var sel = window.getSelection()
var text = sel.anchorNode.nodeValue;
var index = sel.baseOffset + sel.focusOffset;
var isSpace = text[index] === ' ';
于 2013-05-25T21:31:47.647 に答える