v2ex 的这个贴子回复列表里, 那个 @会员 一下,就把会员 @到下面回复编辑器的 js 代码是怎么写的?

2017-08-06 11:48:15 +08:00
 bb2018

v2ex 的这个贴子回复列表里, 那个 @会员 一下,就把会员  @到下面回复编辑器的 js 代码是怎么写的?

看了一下好像是调用了:replyOne()函数

要是写一个大体通用的简单的,  @会员 在下面编辑器里回复的 js 代码什么样?

2628 次点击
所在节点    前端开发
6 条回复
Antidictator
2017-08-06 12:05:19 +08:00
很难吗?点击回复按钮的时候获取当前行的用户名然后在编辑器的末端加一个换行再加 @获取到的用户名?
oh
2017-08-06 12:18:29 +08:00
前端的代码不都随便看的吗…… 都查到 replyOne 就直接看这个函数嘛
schezukNewTos
2017-08-06 12:20:31 +08:00
@Antidictator 我想他说的是输入框的自动补全。
caomu
2017-08-06 12:30:30 +08:00
https://www.v2ex.com/static/js/v2ex.js

// reply a reply
function replyOne(username){
replyContent = $("#reply_content");
oldContent = replyContent.val();
prefix = "@" + username + " ";
newContent = ''
if(oldContent.length > 0){
if (oldContent != prefix) {
newContent = oldContent + "\n" + prefix;
}
} else {
newContent = prefix
}
replyContent.focus();
replyContent.val(newContent);
moveEnd($("#reply_content"));
}
autoxbc
2017-08-06 12:40:09 +08:00
我猜楼主想问的是那个自动生成的会员下拉菜单
插件叫 jQuery.textcomplete
调用就在 html 源码里,开头是 $("#reply_content").textcomplete
VShawn
2017-08-06 13:02:04 +08:00
这个功能不是很简单的吗,作为写算法的都我知道这个 js 怎么写啊

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

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

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

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

© 2021 V2EX