javascript - 如何在 maquette js 中管理焦点和光标位置?

标签 javascript dom maquette

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

如何确保新节点之一(即 contenteditable div)在重新渲染后获得焦点?

同样:如何在先前聚焦的元素中保留光标位置?

最佳答案

创建元素后,您可以使用 maquette 提供的 afterCreate 回调来获取元素。您可以对其调用 .focus() 或读取/写入其 selectionStart。祝你好运!

PS:如果您也希望焦点在 iOS 上工作,则需要在触发焦点的事件期间调用 projector.renderNow()

关于javascript - 如何在 maquette js 中管理焦点和光标位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45953827/

相关文章:

javascript - D3.js v4+ - 如何确定强制布局中的特定位置

javascript - InvalidSelectorError,需要帮助定义我的 xpath 选择器

html - jQuery 手机 : Dynamically loaded content bloating the DOM

javascript - Maquette 中组件之间的通信

javascript - Maquette 修改后如何更新 DOM

javascript - 解析云代码不会在成功或失败时记录/发出警报

javascript - 这个正则表达式有什么问题?

javascript - D3 树形图节点顺序

javascript - 从大字符串中检测 url 并在每个 url 的末尾添加一些文本