4

メソッドを使用して contentEditable div に span タグを挿入していますdocument.execCommand insertHTML

挿入後、キャレットを入力の最後に設定して、それ以上の入力が最後に挿入されたスパンタグの外側にあるようにします。デフォルトの動作は、少なくとも Chrome では、タグ自体に追加の入力を配置することです。

4

2 に答える 2

2

私が思いついたひどいハックは、単語の直後に別のスパン要素を挿入することです:

document.execCommand('insertHTML', false, '<span>&nbsp;</span>');

これで、新しいコンテンツが代わりにこのスパン要素に入ります。うまくいけば、より良い解決策があります。

于 2012-10-17T22:26:31.487 に答える
2

これを試すまで、私もこれに固執していました。&nbsp;次のように挿入の最後にa を配置します

document.execCommand('insertHTML', false, '<span>&nbsp;</span>&nbsp;');

HTML の最後にスペースを入れるだけでは機能しません。常にトリミングされていることがわかったからです。

于 2014-08-24T23:48:13.687 に答える