@功能是怎样实现的

2015 年 6 月 9 日
 qq459969411

例如v2ex 里的@功能,大神们求思路....

3653 次点击
所在节点    PHP
11 条回复
TaoAlpha
2015 年 6 月 9 日
keydown检测吧, @的keycode是50, 然后加上对应的唤出和一些细节的判断.

看了下V2EX的代码, 是利用jquery-textcomplete插件实现的, 详见: http://yuku-t.com/jquery-textcomplete/
qq459969411
2015 年 6 月 9 日
@TaoAlpha 数据库表是怎样设计的?需要用一张专门的@表吗?
gilgamesh
2015 年 6 月 9 日
你是说@人收到提醒,还是输入@自动补全用户名?
qq459969411
2015 年 6 月 9 日
@gilgamesh 收到信息
TaoAlpha
2015 年 6 月 9 日
@qq459969411 不需要数据库吧... 只需要把当前页的用户抽取出来传给textcomplete就行了, 比如现在这个页面就是:

var words = ['TaoAlpha', 'qq459969411']
TaoAlpha
2015 年 6 月 9 日
@qq459969411 哦, 我还以为你问的前端展现这部分呢~哈
Septembers
2015 年 6 月 9 日
kechx
2015 年 6 月 9 日
可能你需要的是这个 https://github.com/ichord/At.js
ZhaoMiing
2015 年 6 月 9 日
正则取到@后面的用户名,然后在通知表中插一条
qq459969411
2015 年 6 月 9 日
@ZhaoMiing ok谢谢大概明白了。
eoo
2015 年 6 月 21 日
需要用到正则表达式

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.xtra.eu.org/t/197117

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX