こんにちは、freetextbox内のキャレット位置を取得しようとしています。これは IE でのみ機能する必要があります。Google で見つけたいくつかのスクリプトを試してみましたが、どれも機能しませんでした。正しい結果が得られない..
それを行う方法はありますか?とても簡単にできるように思えますが、そうではありません...
WTKの回答を使用することで、私はそれを理解したと思います!
function GetCaretPossion(o) {
var r = document.selection.createRange();
var sel = o.GetSelection();
var re = o.CreateRange(sel);
var rc = re.duplicate();
re.moveToBookmark(r.getBookmark());
rc.setEndPoint('EndToStart', re);
return rc.text.length;
}
編集: ドキュメント内の img タグをクリックするまで、これはうまく機能し、o.CreateRange(sel) は [Object, TextRange] ではなく [Object, ControlRangeCollection] を返すようです..この問題を解決する方法はありますか??
Edit2:これにより、テキストのインデックスが表示され、その背後にあるhtmlのインデックスが表示されないように見えるため、結局機能しませんでした..