ホームページ >ウェブフロントエンド >jsチュートリアル >カーソルが ContentEditable `` の先頭にリセットされないようにする方法
ContentEditable のカーソル位置を設定 contentEditable='on' 解決策: 1.カーソル位置の保存: この関数は、 2.カーソル位置の復元: この関数は、 3.クリック イベントの防止 (オプション): クリック時にカーソルを最初にリセットするのではなく復元したい場合は、次の関数を使用できます: これら関数は onblur、onclick、および onmousedown イベントに付加され、クリック イベントがカーソル位置をリセットするのを防ぎます。また、選択内容が復元され、カーソルが中断した場所に確実に配置されます。 以上がカーソルが ContentEditable `` の先頭にリセットされないようにする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。function saveSelection() {
if (window.getSelection) { // non-IE
savedRange = window.getSelection().getRangeAt(0);
} else if (document.selection) { // IE
savedRange = document.selection.createRange();
}
}
function restoreSelection() {
if (savedRange != null) {
if (window.getSelection) { // non-IE
var s = window.getSelection();
s.removeAllRanges();
s.addRange(savedRange);
} else if (document.createRange) { // non-IE
window.getSelection().addRange(savedRange);
} else if (document.selection) { // IE
savedRange.select();
}
}
}
var isInFocus = false;
function onDivBlur() {
isInFocus = false;
}
function cancelEvent(e) {
if (isInFocus == false && savedRange != null) {
e.stopPropagation();
e.preventDefault();
restoreSelection();
return false;
}
}