javascript - 在后台打开的 chrome 选项卡中会发生(或不会发生)什么?

标签 javascript google-chrome polymer google-chrome-devtools

观察:我在 Polymer 中运行 SPA,当我在 chrome 的新后台选项卡中打开内部链接时,页面不会完成加载(ajax 和所有),直到我关注选项卡.

问题:chrome 在等待用户焦点做什么 - 或者 - Polymer 在完成呈现页面和发送 ajax 请求之前在等待什么?

奖励:我如何打开一个开发工具面板,目标是我在后台打开的选项卡,以观察发生了什么/没有发生什么?

奖励答案:如果您在选项卡上打开开发工具,离开该选项卡,然后刷新开发工具,关联的选项卡也会刷新并模拟已在后台打开。

最佳答案

在 Polymer 中,core-ajaxauto 属性设置为 true 使用 Polymer job 实用程序(source ). Polymer 的作业实用程序使用 requestAnimationFrame() 函数 ( source )。根据 herehere ,当标签处于非事件状态时,chrome 会完全暂停此功能。

解决方案:通过从我的 core-ajax 元素中删除 auto 属性并在就绪事件上手动调用 go() 方法,我能够让我的页面在后台完全加载。

关于javascript - 在后台打开的 chrome 选项卡中会发生(或不会发生)什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32212256/

相关文章:

c# - 将值从 ASP.NET 页面发布到 C#

JavaScript,创建新的 html 元素 : the content of the new created <td> is inserted in old <td>

javascript - 如何从扩展的 casperjs 函数返回值?

javascript - 如何更改 Chrome 设置以使用 navigator.language 进行测试

javascript - 同位素转换 'flash' 错误(Chrome)

javascript - 我要如何循环遍历 Polymer 1.0 元素中的一组 DOM 元素?

javascript - 多个 div 依次自动滚动,并具有固定的标题/页眉

linux - 如何实用地通过代理路由 watir?

javascript - 简单的 polymer 组件在 Safari 10 上不起作用

javascript - 如何在 AngularJS 中绑定(bind)自定义事件?