google-chrome - 在 chrome 扩展中引入加载时间延迟

标签 google-chrome tabs load google-chrome-extension delay

对于一个研究项目,我正在编写一个 chrome 扩展,当我转到某个 url 时,它应该引入 2 秒的加载延迟。所以基本上我想要用户输入“example.com”的效果,他们必须在页面开始加载之前额外等待 2 秒。有没有办法用 chrome 扩展来做到这一点?我已经搜索了文档,但似乎找不到这样的东西。

最佳答案

Chris 的解决方案可行,但它会锁定 UI。您也可以试试这个简单的内容脚本:

content_script.js:

document.documentElement.style.display = 'none';
setTimeout(function() {document.documentElement.style.display = '';}, 1000);

list .json:

{
  "name": "Delay webpage displays",
  "version": "1.0",
  "content_scripts": [
    {
      "matches": ["http://*/*"],
      "js": ["content_script.js"],
      "run_at": "document_start"
    }
  ]  
}

但我必须说这很烦人。此外,精明的用户会知道发生了什么事,因为即使没有“正在等待 www.example.com...”状态行,它也会显示空白页面。

如果你想完美地模拟慢速网络,我认为最好的方法是创建一个引入延迟的 HTTP/HTTPS(或者可能是 SOCKS5)代理。您可以通过创建 proxy.pac 使浏览器仅在某些 URL 上使用代理。文件或使用 Chrome experimental proxy API .

那你要模拟什么?如果你想模拟高 CPU 的 JS 或渲染,那么使用 Chris 的解决方案。如果要模拟慢速网络,请使用代理。我的解决方案有点模拟慢速网络,但它并不是完美的伪装。

关于google-chrome - 在 chrome 扩展中引入加载时间延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5797522/

相关文章:

javascript - 为什么我不能使用 chrome 扩展注入(inject) socket.io

javascript - 如何在新窗口而不是同一窗口中打开 javascript 项目数组?

android - 如何重新加载存在于 TabView 中的 Activity ?

compilation - 获取 key 错误 : 'project' when try to run apportable load command

MYSQL - 将 XML 多个重复(复制)标签作为一个字符串加载

c# - 使用 chrome 而不是 SHDocVw.InternetExplorer

javascript - 将键盘和鼠标移动映射到后台网页

tabs - VS代码: Auto-indent on tab press to match indentation of previous line

python - 从 0-d numpy 数组中恢复字典