打开Chrome devtools会如何改变行为?

14
在我的JavaScript中,我实现了一个功能,可以隐藏标题栏,并通过scrollEvent触发。所以当我向下滚动时,标题栏会被隐藏,而当我开始向上滚动时,它会显示出来。想象一下,这与大多数移动浏览器对搜索栏所做的类似效果相同。
问题在于,在打开devtools时,它可以正常工作。如果我关闭devtools,效果就不再起作用,也就是说,当我向下滚动时,标题栏仍然可见。如果我重新打开devtools(ctrl-shift-j),效果就会再次起作用。我在单独的窗口中运行devtools,因此它的存在不会影响我的应用程序的窗口尺寸。
有人知道Chrome devtools的存在对Javascript或呈现行为有何影响吗?
注:对于任何快速阅读并错过我的问题要点的读者,我并没有要求解决我正在看到的问题。我只是特别询问我的问题的答案。
编辑:我现在发现,控制台前景和背景的情况也很重要。当控制台在前景时,它有效,在后台时它失败。请参见https://ibb.co/4M75sPQ上的动画gif。

3
你可以提供一个 [mcve],这样我们就能够自行查看。在此过程中,你甚至可能会发现问题所在。 - Dave S
1
检查开发者工具网络选项卡中是否已启用禁用缓存,以确定是否会引起不同的问题。 - Tarun Lalwani
2
如果这个理论成立的话,那会对它有利,Chrome必须在标签页处于前台时提供更多资源。 - Bruno Mazzardo
2
很遗憾,这个问题很难调试和测试,祝你好运找到问题所在。如果我想到了别的解决方法,我会在这里发布答案。 - Bruno Mazzardo
1
@NielsBrinch,我想了一下,我更希望您的评论成为我可以接受的答案。大致上应该是这样的:“开发控制台会将焦点从您的应用程序中移开,因此,如果您的应用程序在任何方式上对焦点敏感,或者受到前景与后景窗口相对执行优先级的影响,那可能是一个因素。”如果您想将其发布为答案,我会接受它。 - pinoyyid
显示剩余13条评论
2个回答

4

我之前在Stack上也有类似的问题。我的问题影响了JS的执行方式和速度,特别是当我打开控制台时,JSPerf会变得很慢,测试结果完全混乱。你可以在这里查看我的答案

不过,你的问题可能与你的开发工具配置有关,正如这位用户在这个问题中指出的那样https://askubuntu.com/a/633838/742250

你尝试在隐身窗口或其他浏览器中进行测试了吗?比如Mozilla或Safari?


3
Chrome DevTools 会将焦点从你的应用中转移开,因此如果你的应用在任何程度上对焦点敏感,或者受前景窗口与后台窗口相对执行优先级的影响,那可能是一个因素。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接