浮動小数点div
要素をcontentEditable
でiframe
に配置したい場合は、ユーザーが特定のキーの組み合わせを入力すると。contentEditableを使用してiframe内の現在のキャレット位置からピクセルオフセットを取得する方法
私はキャレット位置を取得する方法を知っている: document.getElementById('elm1_ifr').contentWindow.getSelection().anchorOffset
私はdiv要素のleft
プロパティを計算するためにこれを使用することができますが、私はtop
を取得する方法を見つけ出すように見えることはできません。
私が使っていた考えたもう一つの可能性: document.getElementById('elm1_ifr').contentWindow.getSelection().anchorNode.parentNode
を、オフセットを取得するためにはjQueryを使用して、それ親が長いテキスト行を持っている場合、私は最初の行の先頭位置を抽出することができるだろう。
誰もがこれを手伝ってくれますか?
あなたは範囲が '左+幅&トップ+高さオフセットを取得するために' getBoundingClientRect()を使用し、その後、0から現在のキャレットの位置になるように設定できませんでした、それにキャレットを復元すると、以前のです設定? – Mottie
古いスレッドですが、要素を挿入すること([execCommand( 'insertHTML') ']を使用してそれを削除することは、元に戻す/やり直しスタックを壊してしまいます。元に戻す/やり直しが重要でないかどうかは関係ありません。 – techfoobar
@techfoobar:良い点、ありがとう。私は答えにメモを付け加えました。 –