Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[知乎美化] 暗黑模式 1 在专栏文章页面无限刷新 #39

Closed
ivysrono opened this issue May 5, 2021 · 18 comments
Closed

[知乎美化] 暗黑模式 1 在专栏文章页面无限刷新 #39

ivysrono opened this issue May 5, 2021 · 18 comments

Comments

@ivysrono
Copy link

ivysrono commented May 5, 2021

知乎美化1.1.11
Firefox88
Violentmonkey 2.13.0
https://zhuanlan.zhihu.com/p/368577912
切换到模式234都没问题

@XIU2
Copy link
Owner

XIU2 commented May 6, 2021

Chrome 浏览器表示没有这个问题。。。

另外,我只能确保我的所有脚本在 Tampermonkey 上可以正常工作,其他的脚本管理器扩展都不做保证。

请你尝试切换到 Tampermonkey 扩展试试是否正常,如果还不行,那可能是浏览器上的差别?


之所以会刷新,是因为 [暗黑模式 1] 是在知乎自带的暗黑模式基础上优化了样式(完全重写的话,样式太多了),所以每次访问网页时,都要判断网页是否处于暗黑模式(如下图所示,按下 F12 键,选择 Elements)。

如果不是暗黑模式的话,就需要在 URL 末尾加上 ?theme=dark 并刷新网页,这样知乎会默认使用自带的暗黑模式,持续到关闭浏览器(下次启动浏览器访问知乎又变成白天模式了)。

然后脚本向网页插入样式,覆盖部分知乎自带的暗黑模式样式。

01

你关闭脚本后,按 F12 看一下这里,然后再把 ?theme=dark 加到 URL 后面访问,再看一下这里,看看是不是知乎没有正确应用主题模式修改?

@XIU2
Copy link
Owner

XIU2 commented May 6, 2021

已更新 v1.1.12

  1. 优化 [暗黑模式] 逻辑代码。
  2. 优化 [暗黑模式] 方案一样式(私信、滚动条、边框等)

现在不再使用 ?theme=dark 来切换知乎自带的暗黑模式了,而是脚本直接设置 Cookie。
现在开启/关闭 [暗黑模式] 时(以及切换暗黑模式时),都会自动设置 Cookie 并刷新网页。

所以你这个无限刷新的问题,应该也解决了,你更新试试吧。

不知道为什么,从昨天开始 GreasyFork 就无法更新脚本介绍了(报错 500)。。。

@XIU2 XIU2 changed the title 暗黑模式1在专栏文章页面无限刷新 [知乎美化] 暗黑模式 1 在专栏文章页面无限刷新 May 6, 2021
@ivysrono
Copy link
Author

ivysrono commented May 6, 2021

然后发现了一个很意外的问题:
没有安装知乎增强的情况下,模式234都会导致 #40 下登录提示被消失,页面无法滚动。

@XIU2
Copy link
Owner

XIU2 commented May 6, 2021

然后发现了一个很意外的问题:
模式234都会导致 #40 下登录提示被消失,页面无法滚动。

不是很理解你说的情况,我也无法复现你说的情况。

@ivysrono
Copy link
Author

ivysrono commented May 6, 2021

然后发现了一个很意外的问题:
模式234都会导致 #40 下登录提示被消失,页面无法滚动。

不是很理解你说的情况,我也无法复现你说的情况。

更新了下,是禁用知乎增强脚本的情况下。
毕竟总是有人单独安装知乎美化的,还是值得处理下吧。

@XIU2
Copy link
Owner

XIU2 commented May 6, 2021

可是我在关闭 [知乎增强] 脚本的情况下。

切换暗黑模式 1 2 3 4 都不会出现你说的“登录提示被消失,页面无法滚动” 情况。

@ivysrono
Copy link
Author

ivysrono commented May 6, 2021

https://zhuanlan.zhihu.com/p/368577912
模式1
图片

模式234都是这样灰蒙蒙的,有一层背景:
图片

@XIU2
Copy link
Owner

XIU2 commented May 7, 2021

然而我在关闭 [知乎增强] 脚本情况下,和你的并不一样。

另外,[知乎美化] 脚本没有免登录功能,想要免登录必须使用 [知乎增强]。

[知乎美化] 中的屏蔽登录提示,只针对问题页面中间的横条提示,对于登陆提示弹窗需要由 [知乎增强] 移除。

01

@ivysrono
Copy link
Author

ivysrono commented May 8, 2021

算了,反正也不是什么大事,把知乎增强装上就完了~

@ivysrono ivysrono closed this as completed May 8, 2021
@XIU2
Copy link
Owner

XIU2 commented May 11, 2021

我更新 [知乎美化] 的时候,发现那部分代码还是不能少,否则会导致其他问题,但是我又无法复现你说的问题(无限刷新,也就是写入 Cookie 的问题),如果你有兴趣,希望可以我给你远程协助看一下问题到底出在哪里。

@ivysrono
Copy link
Author

无所谓了,以我和知乎斗争的经验,你会经常要改变模式的,时间一长,现有代码一文不值哈

@XIU2
Copy link
Owner

XIU2 commented May 11, 2021

虽然我无法复现你的问题,但是我根据现有代码分析,应该是 Cookie 写入的问题。

因为脚本的 [暗黑模式] 1 是基于知乎自带的暗黑模式(我优化了样式),因此需要先切换到知乎自带的暗黑模式,而知乎是通过 Cookie 判断主题模式的,而我的脚本也是依靠 Cookie 判断的,如果 Cookie 中写的是白天模式,就会修改为暗黑模式,如果修改 Cookie 失败,那么就会出现 无限刷新 问题。

Chrome 系列浏览器不存在这个问题,应该是 Firefox 浏览器关于 Cookie 方面和 Chrome 不一样导致的。
另外,你试过 Tampermonkey 脚本管理器吗?

@ivysrono
Copy link
Author

没有,因为我写的一些脚本可能用了VM的特有功能,所以除非万不得已,否则我不会去用TM啦。
这也是我不再就这个问题深究的原因之一,尤其是知乎这种网站,差不多就行了。

@XIU2
Copy link
Owner

XIU2 commented May 11, 2021

我的意思是,你临时试一下 Tampermonkey 用我的脚本会不会出现无限刷新。
看看是 Violentmonkey 的问题还是 Firefox 浏览器的问题(排除法)。
不是让你永远使用 Tampermonkey。。。

@ivysrono
Copy link
Author

那要等两天我空下来再说啊。

@XIU2
Copy link
Owner

XIU2 commented May 11, 2021

我安装了 Firefox 浏览器,以及 Tampermonkey + Violentmonkey,分别测试了下,都没有无限刷新,Cookie 都写入正常。

不过我发现 [暗黑模式] 2 3 4 在 Firefox 浏览器下的显示效果和 Chrome 系列浏览器不一样(网页背景不改变),很蛋疼。

然后还有知乎文章页,[暗黑模式] 2 3 4 添加的网页滤镜会导致知乎底部悬浮条(赞同、评论等)消失。

这两个问题我完全摸不着头脑。

@ivysrono
Copy link
Author

网页背景不变是真的,我还以为你就这样设计的。
css的兼容性问题太多,不要太在意啦。

@XIU2
Copy link
Owner

XIU2 commented May 12, 2021

研究了下,解决了 Firefox 浏览器下暗黑模式背景显示问题。

但是悬浮元素不显示的问题我依然没找到解决办法(准确说是完全不知道为什么)。。。

2021年05月12日,版本 v1.2.0

  1. 优化 [暗黑模式] Firefox 浏览器下的显示效果(与 Chrome 系浏览器基本一致)。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants