V 站困扰我一两年的 bug,复现了一下

2016-11-11 13:11:00 +08:00
 mactaew

问题:

无法将帖子加入收藏

描述:

使用移动版界面的时候,点加入收藏会刷新一遍,但是并没有执行收藏这个动作。

曾经提问过这个问题,再上一贴中已经通过用 iPad 访问排除过插件问题。 老帖子

测试与复现:

怀疑是使用了自定义 css 导致的问题,于是乎在尝试重新登录排除干扰因素后,分别测试同一帖子使用与不使用自定义 css 情况下,能否加入收藏。

结果为:不使用时可以加入,使用时出现上述问题。

css 代码:

#Top {
	background-image: url("");
	background-color: #32404D;
	color: #FFFFFF;
}

#Top td>a {
	color: #FFFFFF;
}

#Top td>a>img {
	-webkit-filter: invert(1);
	filter: invert;
}

#Wrapper {
	background-image: url("http://dxc100.com/Src/BG.png");
	background-position: initial initial;
	background-repeat: repeat repeat;
}

.box {
	-moz-box-shadow:0px 0px 20px #474747;
	-webkit-box-shadow:0px 0px 20px #474747;
	box-shadow:0px 0px 20px #474747;
}

#Bottom {
	border-top: 0px solid #ccc;
	background: #32404D;
}

#Bottom>div.content {
	background: rgba(255, 255, 255, 0.27);
	color: white;
	border-radius: 6px;
}

#Bottom strong>a:link {
	color: white;
}

#Bottom strong>a:hover {
	color: #778087;
}

#Bottom strong>a:visited {
	color: white;
}

@Livid

3977 次点击
所在节点    反馈
10 条回复
pubby
2016-11-11 14:19:48 +08:00
我猜是你的 css 有问题
background-image: url("");

导致当前页被当成背景图重新加载了一次,然后页面表单的某些 csrf token 失效了。
kera0a
2016-11-11 14:27:41 +08:00
原因是
v 站有个页面的 once 变量,估计作用是防止重复操作吧
如果 once 过期了,操作就是刷新一下页面,不会真的操作成功了。
这个 once 用了一次就会失效,但是没用过就会一直存在一段时间。

自己测试也简单,
多打开几个 tab ,然后其中一个页面点收藏, once 有效,所以收藏成功。
其他页面的 once 是过期无效的,所以操作都会失败
Kisesy
2016-11-11 14:28:29 +08:00
我这里默认 css ,不装任何插件,都经常出现点不上收藏的情况,需要多次点击
RyuZheng
2016-11-11 15:20:46 +08:00
这个是 V2EX 的老梗了,据说 Livid 可能看帖子都是只进入一个帖子然后再后退,再进另一个帖子。
你多开 tab 的时候,需要刷新一下页面,使 V2EX 知道当前你是在访问这个页面,然后点收藏就可以成功,一般我的做法是点了收藏自动刷新,然后再点收藏。
应该跟自定义 css 没什么关系。话说 V2EX 的 chrome 拓展写的那么好,能不能再加上这个功能呢?
Loerise
2016-11-11 16:38:21 +08:00
第一次反应这问题的时候我还是个孩子。。。
coolair
2016-11-11 16:42:30 +08:00
帖子长的时候很坑爹,每次收藏完得翻下来确认下!
mactaew
2016-11-11 18:09:21 +08:00
@pubby 醍醐灌顶,我试试看修正一下!感谢~
mactaew
2016-11-11 18:10:22 +08:00
@kera0a 我猜测是一楼说的原因,我先试试。因为单页的状态下依然是这样。
mactaew
2016-11-11 18:14:01 +08:00
@pubby 已经解决了!再次感谢。时间太久,我也不记得当初为啥会加入这一行,删了也并没有区别。
@RyuZheng
@kera0a
xspoco
2016-11-11 18:19:44 +08:00
感谢好像也会有这问题要点两次

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

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

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

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

© 2021 V2EX