2016-07-27 12 views
0

単純なテキストエディタを作成する必要があります。最新のfirefoxとchromeで動作するのであれば、すべてのブラウザで作業する必要はありません。クロムのcontenteditable要素のノード内でキャレット位置をゼロに設定します

問題は、ノード内で最初の文字の後に自動的にステップするとき、私は子ノードとchromeにcontenteditable divを持っています。キャレットをゼロ位置に設定することは可能ですか?クロムスパン内部キャレットステップは、キャレットを自動的Tの後に配置

FIDDLE

<div contenteditable="true"> 
    some <span>text</span> other text 
</div> 

。選択と範囲でポジションを設定するのは疲れましたが、うまくいきません。

更新:解決済み、私の答えをご覧ください。

firefoxでは、私が望むように動作します。

+0

それはChromeとFirefoxで同じ動作をするので、問題を実証することになっているフィドルです。 –

+0

私はfirefoxを使うとき、キャレットは '>'の後に置かれます(span:before content)。クロムでは、キャレットはスパンタグの内側の文字の後に置かれます。これは、矢印キーでステップしてスパン要素の内側にステップインしたときに発生します。 – Twois

答えて

0

ありがとうございました。この解決策を見つけるのはいかがですか。

子要素(sapn)にcontenteditable属性がtrueであれば、それは動作します。

<div contenteditable="true"> 
    some <span contenteditable="true">text</span> other text 
</div> 

FIDDLE

関連する問題