V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
爱意满满的作品展示区。
vitovan

于是我重新设计了 V2EX - v2excellent.js

  vitovan · Nov 24, 2015 · 17584 views
This topic created in 3807 days ago, the information mentioned may be changed or developed.

跳过正文:https://vitovan.github.io/v2excellent.js/

缘起

看到一个贴子 于是我攒了一个黑苹果 ,大家讨论的热火朝天,于是我点了进去:

贴子倒是没什么可吐槽的,关键是回复

根本看不懂啊,不知道大家都在讨论什么呀!!

“ I217 可以用 AppleIntelE1000e.kext 来完美驱动”,这...... 指的是......

于是我拖到下方,找到分页按钮,用强大的人工智能,终于搞清楚了大家都在说些什么。

于是

想,平时看 HackerNews 的评论体验多好呀,明确的知道大家都在讨论什么,评论嵌套着很方便阅读么!为毛 V2EX 不搞一搞?

于是我决定搞一搞。

然后

发现 V2EX 与 HN 不同的一点是:回复中可以同时回复多人,这...... 不是嵌套关系。

不好搞啊......

不过

还是搞了出来。

可能算法上不很严谨,但效果还是蛮好的。

发出来给大家试试,要是觉得不错的话,封成插件呀~

效果是这样的:

主页在这里:https://vitovan.github.io/v2excellent.js/

源码在这里:https://github.com/VitoVan/v2excellent.js

Supplement 1  ·  Nov 24, 2015
要是大家觉得有用的话,要不封装成插件?支持 Chrome / Firefox / User Script ?
Supplement 2  ·  Nov 24, 2015
支持跨页啊,盆友们。自动提取帖子所有回复。
Supplement 3  ·  Nov 24, 2015
Supplement 4  ·  Nov 25, 2015

升级了,请删除当前书签,前往项目主页重新添加 http://vitovan.github.io/v2excellent.js/

2015/11/25 Add feature: Image Upload
2015/11/25 Add feature: #reply42 Jump
2015/11/25 Add feature: Gift ClickOnce
2015/11/25 Add feature: Floor Specification

Supplement 5  ·  Nov 25, 2015
Supplement 6  ·  Apr 15, 2017
125 replies    2018-01-05 13:48:10 +08:00
1  2  
vitovan
    1
vitovan  
OP
   Nov 24, 2015
Sorry La... 标题党,一楼认错。
Coxxs
    2
Coxxs  
   Nov 24, 2015   ❤️ 1
好赞!也可以考虑做成 user script
zdnet
    3
zdnet  
   Nov 24, 2015
好用!
cdxem713
    4
cdxem713  
   Nov 24, 2015 via iPhone
虽然没有用,但是想了下,貌似有很大的 bug 啊。 v2 不像一般论坛是回复某楼,而是回复某人的,你这样的层级关系一方面肯定聚合不对,而且如果只是几个人的频繁交流,你是如何聚的?
babytomas
    5
babytomas  
   Nov 24, 2015 via Android
Nice ,一直很想吐槽 P2EX 的评论。。。
jprovim
    6
jprovim  
   Nov 24, 2015
@sciooga 有人将军.
CodingPuppy
    7
CodingPuppy  
   Nov 24, 2015
good job,之前有觉得 V 站回复系统不好用,想写个插件来着,奈何 Javascript 技能没点满,一直拖着,现在可以直接用起来了。
dsdshcym
    8
dsdshcym  
   Nov 24, 2015
但是每次都要加载一下好麻烦😂
vitovan
    9
vitovan  
OP
   Nov 24, 2015
@dsdshcym 如果需要的话,改天封装成插件。
hccbook
    10
hccbook  
   Nov 24, 2015 via iPad
我觉得改成 user script 会更好哦
exoticknight
    11
exoticknight  
   Nov 24, 2015
考虑弄成网状?
sablib
    12
sablib  
   Nov 24, 2015   ❤️ 1
在首页点的时候把帖子之间的分割线给弄没了。
Yvette
    13
Yvette  
   Nov 24, 2015
真棒!希望出 Safari 插件
nicktogo
    14
nicktogo  
   Nov 24, 2015 via Android
支持改成 user script
vitovan
    15
vitovan  
OP
   Nov 24, 2015
@sablib 哈哈,我还没有在首页点过呢。
sciooga
    16
sciooga  
   Nov 24, 2015
@jprovim 哈哈,很好嘛。

@vitovan 楼主 V2EX PLUS 是支持跨页的判断相关回复的,具体是使用了 V 站的一个 API:
https://www.0.51bbc.workers.dev/api/replies/show.json?topic_id=238403 (获取这个主题的所有回复)

附上一个效果图 : )
Tink
    17
Tink  
PRO
   Nov 24, 2015   ❤️ 2
居然有我。。
sciooga
    18
sciooga  
   Nov 24, 2015
另外书签小应用(国内没有一个统一的称呼)一般是写成 Bookmarklet
simo
    19
simo  
   Nov 24, 2015
我司论坛 03 年上线一直是树状,这么多年,深层嵌套、无法分页,痛觉不爱。
bk201
    20
bk201  
   Nov 24, 2015
然而个人觉得嵌套看着很累
Kilerd
    21
Kilerd  
   Nov 24, 2015
挺不错,但是对于那些一次回复喜欢回复几个人的楼主,该怎么分割呢?

方法挺好,可能需要改进一下算法。
nisnaker
    22
nisnaker  
   Nov 24, 2015
@cdxem713
4 楼说得对。

一直用 v2ex.ext ,感觉这个回复提示比较合理。
vitovan
    23
vitovan  
OP
   Nov 24, 2015
@sciooga 这个也是支持跨页的,不过用的不是 API ,咦?居然有 API ?
vitovan
    24
vitovan  
OP
   Nov 24, 2015
@sciooga 这是隐藏 API 么?怎么在官方页面上没找到?
https://0.51bbc.workers.dev/p/7v9TEc53
vitovan
    25
vitovan  
OP
   Nov 24, 2015
@cdxem713 哈哈,这是个已知的未找到解决方案的问题。
sciooga
    26
sciooga  
   Nov 24, 2015   ❤️ 1
@vitovan 有朋友看 V 站 源码整理出来的。
vitovan
    27
vitovan  
OP
   Nov 24, 2015
@Kilerd 一次回复好几个的,在逻辑上搞不定啊,当前是直接按照只回复了第一个人来算了。
gDD
    28
gDD  
   Nov 24, 2015 via iPhone   ❤️ 1
起得一个好名字!
chenshaoju
    29
chenshaoju  
   Nov 24, 2015
哦哟,不错哟,蛮吊的哟!
cheny95
    30
cheny95  
   Nov 24, 2015



用了 V2EX PLUS

引用了两位的名字请见谅,纯演示使用

@sciooga @jprovim
cheny95
    31
cheny95  
   Nov 24, 2015
点开"会话详情" 也可以愉快的玩耍
hronro
    32
hronro  
   Nov 24, 2015   ❤️ 1
这个很赞啊,前几天想做一个类似的,没想到已经有人做出来了。
默默点赞~
haog
    33
haog  
   Nov 24, 2015
不错
imn1
    34
imn1  
   Nov 24, 2015
@vitovan
如果 api 没有指代,简单逻辑应该是回复最接近的发言概率更大一些
首次回复 50 : 50 ,第二次及后回复则绝大多数是对话式了
imn1
    35
imn1  
   Nov 24, 2015
@cheny95
前面未出现提示可以改为“召唤该用户”
vitovan
    36
vitovan  
OP
   Nov 24, 2015
@exoticknight 网状是什么状?
littlewey
    37
littlewey  
   Nov 24, 2015   ❤️ 1
麻烦做成扩展哈
vitovan
    38
vitovan  
OP
   Nov 24, 2015   ❤️ 1
@littlewey Request Accepted!
vitovan
    39
vitovan  
OP
   Nov 24, 2015
@imn1 !!!
你的头像居然是透明背景!天呐!
我的天呐!
wheatcc
    40
wheatcc  
   Nov 24, 2015   ❤️ 1
XuanYuan
    41
XuanYuan  
   Nov 24, 2015
一个帖子里面回复多人的问题,可以做成多重 quote 啊
littlewey
    42
littlewey  
   Nov 24, 2015 via iPhone
@vitovan 透明头像你以为是有 bug 对么? 噗
imn1
    43
imn1  
   Nov 24, 2015
@vitovan
低调,低调,别一惊一咋的
经常被第三方看成是上一楼长回复……

&不是透明,是白色,好像不支持 png
flyslow
    44
flyslow  
   Nov 24, 2015
good job
anthozoan77
    45
anthozoan77  
   Nov 24, 2015
厉害,学习!
imn1
    46
imn1  
   Nov 24, 2015
@vitovan
v2excellent.js 和 min 两个 js 要同时用么?
加载是刷新一次还是仅仅重新渲染?
如果只是渲染,扔进油猴简单些,刷新的话我就改成 pentadactyl 自用
dofy
    47
dofy  
   Nov 24, 2015
不好使啊,点一次没反应,点两次一直 loading
vitovan
    48
vitovan  
OP
   Nov 24, 2015
@imn1 仅需要一个, min.js 是压缩后的。
加载不需要刷新,如果翻页了的话会去 Ajax 拉取其他页的数据。
准备做一下插件和 User Script~
vitovan
    49
vitovan  
OP
   Nov 24, 2015
@littlewey 是呀,吓死我了。
vitovan
    50
vitovan  
OP
   Nov 24, 2015
@dofy 是一直显示 loading 图标么?可否 F12 帮忙看下控制台?
vitovan
    51
vitovan  
OP
   Nov 24, 2015
@wheatcuican 打算借鉴,作成 Yet Another V2EX Extension.
dofy
    52
dofy  
   Nov 24, 2015
@vitovan 看了控制台,加载了 js 文件,但没有之后的请求。
dofy
    53
dofy  
   Nov 24, 2015
@vitovan 哦 好像可以了
halfcoder
    54
halfcoder  
   Nov 24, 2015   ❤️ 1
不建议直接写 javascript:...,最好用(function(){})();包裹一下,不然 firefox 下似乎不行, 45.0b3 。
DiagnosticError
    55
DiagnosticError  
   Nov 24, 2015
曾经吐槽过,终于有人做这个了
sitin
    56
sitin  
   Nov 24, 2015
一直觉得跨页的看着太累。
FrankFang128
    57
FrankFang128  
   Nov 24, 2015
不喜欢嵌套的评论……
vitovan
    58
vitovan  
OP
   Nov 24, 2015
@halfcoder 多谢,我试试。
skyun
    59
skyun  
   Nov 24, 2015
V2EX PLUS 棒棒哒~
FindHao
    60
FindHao  
   Nov 24, 2015
直接在 tampermonkey 里新建脚本,在自动生成的头里改掉 include :
```
// @include http*://*.0.51bbc.workers.dev/*
// @include http*://0.51bbc.workers.dev/*
```
然后把代码 copy 进去就能跑了呢
效果还是很好的。
goodbest
    61
goodbest  
   Nov 24, 2015
@FindHao 按你的方法搞定了, lz 你也提供个脚本地址供大家用吧

效果
jings
    62
jings  
   Nov 24, 2015   ❤️ 1
@Livid @站长出来才是正途 改插件都是浮云
Krime
    63
Krime  
   Nov 24, 2015
@vitovan 支持弄成插件哦,不过同一个人在帖子里回复多次的情况是怎么处理的?能区分出回复的是他在哪一楼的评论吗?
lenran
    64
lenran  
   Nov 24, 2015
真心不错。但还是希望 @Livid 出来表示下,要不,一旦网站改版就。。。
kokdemo
    65
kokdemo  
   Nov 24, 2015   ❤️ 1
根据开源项目起名学来说……

光拼写 excellent 就能拦住不少人……


我在想要不要把 v2ex.k 挖出来重构一遍……
jaylong
    66
jaylong  
   Nov 24, 2015
棒棒哒好赞~~
不过这个是什么鬼?
“中文是被允许的在这个仓库,你可以在 [上拉请求] 或者 [问题] 板块里使用中文,放轻松些我的老伙计。”
vitovan
    67
vitovan  
OP
   Nov 24, 2015
@jaylong 哈,前一段不是有人在 Issues 里写中文吐槽被鄙视了么,开玩笑啦。
vitovan
    68
vitovan  
OP
   Nov 24, 2015
@Krime 多谢支持,稍候搞一搞。

关于怎么处理的,是直接把他 /她回复的内容附到最近的被回复的人的评论下方了。

并不能区分出他是在回复哪一楼,但通常情况下并不影响效果。

你试试?我在这个帖子里回复了好多了,实际上效果还可以。
hjc4869
    69
hjc4869  
   Nov 24, 2015
@vitovan 感觉像机翻……
hjc4869
    70
hjc4869  
   Nov 24, 2015   ❤️ 1
//i.v2ex.co/E4E691wN.png
//i.v2ex.co/Z7L5i6kT.png
事实证明后端不实现这个功能,在前端实现实在是……
vitovan
    71
vitovan  
OP
   Nov 24, 2015
@hjc4869 实在是......
dsdshcym
    72
dsdshcym  
   Nov 24, 2015
@vitovan 求 Safari 版!
bazingaterry
    73
bazingaterry  
   Nov 24, 2015
很有需求~谢谢!
Starduster
    74
Starduster  
   Nov 24, 2015
Umm
并不能打开, Chrome 46 on Mac

zonghua
    75
zonghua  
   Nov 25, 2015 via iPhone
评论嵌套,看起来像黄易新闻。 V2EX 的评论通知也是不能直接跳转定位的吧?
vitovan
    76
vitovan  
OP
   Nov 25, 2015
@Starduster 帮忙 F12 Debug 一下?控制台有没有说些什么?
vitovan
    77
vitovan  
OP
   Nov 25, 2015
[:doge:]
vitovan
    78
vitovan  
OP
   Nov 25, 2015
vitovan
    79
vitovan  
OP
   Nov 25, 2015
@zonghua 不能直接跳转定位。
确实像黄易新闻,哈哈,瞬间觉得逼格掉了一地。
vitovan
    80
vitovan  
OP
   Nov 25, 2015
r#22 自定义楼层标签测试。
zonghua
    81
zonghua  
   Nov 25, 2015 via iPhone   ❤️ 1
@vitovan 楼上有人说实现网状的(图论?)的评论显示,现实中的谈论的确是这样的关系,想法很超前,就是不知道怎么实现。
liyvhg
    82
liyvhg  
   Nov 25, 2015   ❤️ 1
试了一下, 非常方便, 居然还没有人圈 Livid
vem
    83
vem  
   Nov 25, 2015   ❤️ 1
NICE , 不错 很好用
vitovan
    84
vitovan  
OP
   Nov 25, 2015   ❤️ 2
r#61
@Coxxs
@hccbook
@imn1
@halfcoder
@FindHao
@goodbest

User Script 已出炉,测过 Tampermonkey 和 Greasemonkey ,多谢支持。

https://greasyfork.org/en/scripts/14182-v2excellent-js
JerseyGood
    85
JerseyGood  
   Nov 25, 2015   ❤️ 1
好用!赞
oppressed6370
    86
oppressed6370  
   Nov 25, 2015   ❤️ 1
7654
    87
7654  
   Nov 25, 2015
为什么我用了后评论头像变廋了
vitovan
    88
vitovan  
OP
   Nov 25, 2015
r#87 @7654 因为太大的话,嵌套起来不好看。
7654
    89
7654  
   Nov 25, 2015
r#88 @vitovan 但是我屏幕上是被左右压扁的
还有回复怎么还有跳转到创建新回复页面?
xxm459259
    90
xxm459259  
   Nov 25, 2015   ❤️ 1
好用,赞……(我的帖子引发的讨论确实很乱

直接解决了自己每次 Cmd+F 搜 ID 招人的囧状。。。
dotpig
    91
dotpig  
   Nov 25, 2015   ❤️ 1
很赞。终于搞清楚回复的上下文关系了。
vitovan
    92
vitovan  
OP
   Nov 25, 2015
r#89 @7654
# 左右压扁:截个图看看?我这还好啊......

# 跳转的新回复不是我干的...... 我之前没用这个插件时有时也会跳转到创建新回复页面,可能是 V2EX 的什么机制吧......
7654
    93
7654  
   Nov 25, 2015   ❤️ 1
r#92 @vitovan
看图,火狐 42.0_X64
hccbook
    94
hccbook  
   Nov 25, 2015   ❤️ 1
r#84 @vitovan 非常感谢,已经安装,已经亮星,用行动证明~~~
vitovan
    95
vitovan  
OP
   Nov 26, 2015 via Android
r#93 @7654 哈哈哈哈,这个屌,马上修复一下子。
vitovan
    96
vitovan  
OP
   Nov 26, 2015 via Android
r#70 @hjc4869 现在加了自定义楼层标签,可以直接指楼啦~
vitovan
    97
vitovan  
OP
   Nov 26, 2015   ❤️ 1
r#93 @7654 你更新下 User Script 试试,应该可以了。
7654
    98
7654  
   Nov 26, 2015
r#97 @vitovan 完美
starship
    99
starship  
   Nov 26, 2015
@vitovan 很棒的功能,只是“领取今日奖励” 那 老是显示“正在领取......”,等十几分钟也不显示“已领取”, win7 32 位, chrome
vitovan
    100
vitovan  
OP
   Nov 26, 2015
r#99 @starship 明天你再领的时候,帮忙 F12 看下控制台?
我今儿领了倒是没出啥问题......
1  2  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3510 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 150ms · UTC 11:28 · PVG 19:28 · LAX 04:28 · JFK 07:28
♥ Do have faith in what you're doing.