@功能是怎样实现的

2015-06-09 09:41:01 +08:00
 qq459969411

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

2690 次点击
所在节点    PHP
11 条回复
TaoAlpha
2015-06-09 09:56:57 +08:00
keydown检测吧, @的keycode是50, 然后加上对应的唤出和一些细节的判断.

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

var words = ['TaoAlpha', 'qq459969411']
TaoAlpha
2015-06-09 10:05:12 +08:00
@qq459969411 哦, 我还以为你问的前端展现这部分呢~哈
Septembers
2015-06-09 10:13:41 +08:00
RihcardLu
2015-06-09 10:14:11 +08:00
可能你需要的是这个 https://github.com/ichord/At.js
ZhaoMiing
2015-06-09 10:21:56 +08:00
正则取到@后面的用户名,然后在通知表中插一条
qq459969411
2015-06-09 10:50:23 +08:00
@ZhaoMiing ok谢谢大概明白了。
eoo
2015-06-21 00:12:02 +08:00
需要用到正则表达式

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

https://www.v2ex.com/t/197117

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

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

© 2021 V2EX