你如何管理 maquette js 中的焦点和光标位置?

How do you manage focus and cursor position in maquette js?

我正在使用 maquette js 开发一个小型应用程序。该库使用虚拟 DOM 实现。在触发数据存储更改的某些用户事件之后,它会导致(部分)重新呈现,包括创建一些新的 DOM 节点。

如何确保新节点之一(可内容编辑div)在重新渲染后获得焦点?

类似地:如何在先前获得焦点的元素中保留光标位置?

您可以使用 maquette 提供的 afterCreate 回调在元素创建后获取它。您可以在其上调用 .focus() 或 read/write 其 selectionStart。祝你好运!

PS:如果你也想让焦点作用于iOS,你需要在触发焦点的事件中调用projector.renderNow()