煎蛋多说评论框拯救计划

煎蛋多说评论框拯救计划,拯救被“评论框出错啦(990015): 服务异常,请联系客服人员”折磨的你。

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

作者
imdong
日安装量
0
总安装量
62
评分
0 0 0
版本
0.1
创建于
2017-01-04
更新于
2017-01-04
大小
3.4 KB
许可证
暂无
适用于

# JandanTucao(UserScript)
煎蛋多说评论框拯救计划,拯救被“评论框出错啦(990015): 服务异常,请联系客服人员”折磨的你。当多说服务器返回错误的时候,会自动重试。如果重试还不行,重新点一下吐槽按键也会触发重试。再也不用整个页面刷新啦~~~

# 打包说明
本代码内容直接打包 https://github.com/slowargo/JandanTucao/ 的脚本内容。


##使用方法
直接安装加载即可..

##问题分析
多说的脚本embed.js在请求前会进行无脑初始化:
```
if (!i.data("initialized")) {
i.data("initialized", !0);
```
也就是说,无论后面发生了啥,无论多说的服务器返回啥,都会缓存下来不会再次发起请求了。解决方法也很简单:
```
var res = $(sub_div[0]).html();
if (res.length > 0 && res.length < 30) {
$(sub_div[0]).html('');
$(sub_div[0]).data("initialized", 0);
}

DUOSHUO.EmbedThread(sub_div[0]);

```
在调用多说API前检查一下,如果保存下来的内容是'评论框出错啦(990015): 服务异常,请联系客服人员'(这里把字符串比较改成了比较res.length < 30),就重置一下,这样多说API就会再次向服务器发起请求了。