3

編集不可能な「島」を持つ contenteditable div があります。編集不可能な部分が編集可能なdivの最後のものになるまで、すべてがうまく機能しています。その場合、カーソルは編集不可のすぐ後ろではなく、編集可能な div の最後にあります。

この質問から借りたこの例を参照してください

試すことができるフィドルは次のとおりです:http://jsfiddle.net/RYsvZ/2/ 。末尾のドットを消すとカーソルが飛んでいきます。この動作は Safari と chrome にあります。Webkitの問題だと思います。

コードサンプルは次のとおりです。

<div contenteditable="true" class="editor">
Sample template with <span class="mergecode" contenteditable="false">MergeCode1</span>.
</div>

なぜそれが起こっているのか、それを修正する方法はありますか?

4

2 に答える 2

12
&zwnj;<button contenteditable=false>press</button>&zwnj;

この問題は、キャレットに入るスペースがないために発生するため、contenteditable div をゼロ幅の結合していないスペースでラップすると、キャレットに移動する場所が与えられます。

jsfiddle

于 2014-02-12T09:14:34.103 に答える