javascript - 如何在 Javascript 中恢复插入符号位置?

标签 javascript html css

我试图实现当用户按下重置按钮时,光标定位回输入的开头。

谁能指导我如何实现这一目标?

enter image description here

function restore(){
    // here need to set the position
};
p {
  text-align:left;
  padding:10px;
  font-size: 20px;
  font-family: "Open Sans";
  border:1px black solid;
}

button{
 font-size: 25px;
}
<p contenteditable="true"></p>

<button onclick="restore()">Restore</button>

最佳答案

您可以使用 RangeSelection 对象,如 this answer 中所述。 :

function restore() {
  var el = document.getElementById("editable");
  var range = document.createRange();
  var sel = window.getSelection();
  range.setStart(el, 0);
  range.collapse(true);
  sel.removeAllRanges();
  sel.addRange(range);
}
p {
  text-align:left;
  padding:10px;
  font-size: 20px;
  font-family: "Open Sans";
  border:1px black solid;
}

button{
 font-size: 25px;
}
<p id="editable" contenteditable="true"></p>

<button onclick="restore()">Restore</button>

关于javascript - 如何在 Javascript 中恢复插入符号位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60071109/

相关文章:

javascript - 如何使用 JavaScript 更改所有 div 的样式属性?

jquery - 固定表格列宽(使用 colgroup)在 IE 和 Safari 中删除列后不起作用

javascript - 我在使用 javascript $ .get (URL, callback) 时遇到问题;

javascript - 在 VueJS 中使用 POST 请求提交表单

javascript - 如果所选元素可见,则不执行任何操作,如果不可见则滚动到它

html - 从 SVG 文件中提取路径坐标

html - 禁用默认表单样式

html - 将按钮附加到表格行

css - jQuery UI 风格的文本输入框

javascript - 如何在 slider 中显示图像