我正在尝试在我正在构建的应用程序中实现@mention 系统,但遇到了一些困难。
我最初的做法是这样的:
在 @提及的 textarea/input 之后创建两个隐藏的输入。第一个将保存正在搜索的文本(用于自动完成)。第二个将以@[objectId:text] 的形式保存找到的提及。
这比人们想象的更难付诸实践。当有人按下 @ 符号时,我需要开始将后续文本输入自动完成。我只需要获取 @ 符号和光标之间的文本。如果他们将光标单击到输入的其他部分以编辑某些内容,然后返回编辑 @ 文本怎么办。该脚本需要足够智能,以便仅在用户更新 @ 符号后的文本时才搜索自动完成。
关于实现这一点的最佳方法的想法?有没有一个插件已经这样做了?