观察:我在 Polymer 中运行 SPA,当我在 chrome 的新后台选项卡中打开内部链接时,页面不会完成加载(ajax 和所有),直到我关注选项卡.
问题:chrome 在等待用户焦点做什么 - 或者 - Polymer 在完成呈现页面和发送 ajax 请求之前在等待什么?
奖励:我如何打开一个开发工具面板,目标是我在后台打开的选项卡,以观察发生了什么/没有发生什么?
奖励答案:如果您在选项卡上打开开发工具,离开该选项卡,然后刷新开发工具,关联的选项卡也会刷新并模拟已在后台打开。
最佳答案
在 Polymer 中,core-ajax
将 auto
属性设置为 true
使用 Polymer job
实用程序(source ). Polymer 的作业实用程序使用 requestAnimationFrame()
函数 ( source )。根据 here 和 here ,当标签处于非事件状态时,chrome 会完全暂停此功能。
解决方案:通过从我的 core-ajax
元素中删除 auto 属性并在就绪事件上手动调用 go()
方法,我能够让我的页面在后台完全加载。
关于javascript - 在后台打开的 chrome 选项卡中会发生(或不会发生)什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32212256/