在 Safari 9.0.1 中使用搜狗输入法键入内容时,绑定的 keydown 事件执行时获取到的已经是变更之后的内容。
<textarea id="textarea" cols="30" rows="10">12345678</textarea>
<script>
textarea.onkeydown=function(e){
alert(textarea.value)
}
</script>
重现
Safari 下在上面的例子中开启中文输入法,尝试输入内容即可
需求
有没有可能解决这个 bug?
如果不能解决
解决这个问题的最终目标是:获取内容变更前的正文内容和选取范围
希望能直接获取到内容变更前的正文内容和选取范围,而不是提前记录正文内容和选取范围。
最后解决了?