textarea 的 `selectionStart` 没有更新
textarea's `selectionStart` is not updated
在下面的javascript中,在onkeydown
事件的回调中请求了textAarea的selectionStart
。但是,获取的值不是当前选择的开始,而是之前调用该事件的值。
在这种情况下如何获取当前插入符位置?
function printSelectionStart() {
start = document.getElementById("tarea").selectionStart;
document.getElementById("print").innerHTML="selection starts at "+start;
}
<textarea id="tarea" onkeydown="printSelectionStart();">
</textarea>
<div id="print"></div>
您将使用 onkeyup
事件来检查。
你的情况
<textarea id="tarea" onkeyup="printSelectionStart();">
(尽管将脚本与标记分开会更好)
在下面的javascript中,在onkeydown
事件的回调中请求了textAarea的selectionStart
。但是,获取的值不是当前选择的开始,而是之前调用该事件的值。
在这种情况下如何获取当前插入符位置?
function printSelectionStart() {
start = document.getElementById("tarea").selectionStart;
document.getElementById("print").innerHTML="selection starts at "+start;
}
<textarea id="tarea" onkeydown="printSelectionStart();">
</textarea>
<div id="print"></div>
您将使用 onkeyup
事件来检查。
你的情况
<textarea id="tarea" onkeyup="printSelectionStart();">
(尽管将脚本与标记分开会更好)