ContentEditable でのカーソル位置の設定 contentEditable 内のカーソル位置の設定 クロスブラウザ ソリューション この問題に対処するには、次のソリューションを検討してください: クリック イベント処理 (オプション) デフォルトでは、contentEditable 使用法 これらの関数をコードを作成するには、saveSelection() を このソリューションは、contentEditable 以上がブラウザ間で ContentEditable のカーソル位置を保持する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
function saveSelection() {
if (window.getSelection) {
savedRange = window.getSelection().getRangeAt(0);
} else if (document.selection) {
savedRange = document.selection.createRange();
}
}
function restoreSelection() {
document.getElementById("area").focus();
if (savedRange != null) {
if (window.getSelection) {
var s = window.getSelection();
if (s.rangeCount > 0)
s.removeAllRanges();
s.addRange(savedRange);
} else if (document.createRange) {
window.getSelection().addRange(savedRange);
} else if (document.selection) {
savedRange.select();
}
}
}
function cancelEvent(e) {
if (isInFocus == false && savedRange != null) {
if (e && e.preventDefault) {
e.stopPropagation();
e.preventDefault();
}
else {
window.event.cancelBubble = true;
}
restoreSelection();
return false;
}
}