javascript - 在关闭或重新加载之前保存标签的 Chrome 扩展
问题描述
我想编写一个 Chrome 扩展程序,将整个网页(至少是文本和链接)保存到磁盘,就在选项卡关闭或刷新或加载另一个 URL 之前。
(某些网站每次刷新时都会生成不同的提要。此扩展程序旨在本地保留此类站点的先前提要。加载后立即保存页面并不好,因为它会错过无限滚动期间稍后可能出现的提要。)
我尝试收听onUpdated事件,但它似乎返回新内容而不是预重新加载内容:
// background.js
chrome.tabs.onUpdated.addListener(function(tabId,changeInfo,tab) {
if (tab.url !== undefined && changeInfo.status == "complete"){
chrome.pageCapture.saveAsMHTML({"tabId": tabId}, function(mhtmlData){
let mhtmlBlob = new Blob([mhtmlData], { type: 'application/x-mimearchive' });
// save mht
});
}
});
摆弄changeInfo.status
etc 的不同值也无济于事。我应该检查 onRemoved 和 onReplaced 吗?有什么建议么?
PS:这个相关的问题是关于关闭一个窗口,而我对标签级别感兴趣。
解决方案
推荐阅读
- python - 将 nltk_data 包放在子文件夹中的位置
- javascript - 在没有事件的情况下如何使用参数“COUNTRY_ID”发布到 API
- python - gunicorn 中 pfx 文件的使用
- xml - XMLSpy 升级到 2019 时出现 XSL 和 Schematron 错误
- python - 在图像上绘制日志图
- regex - 正则表达式排除单个字符但允许多个字符
- windows - 批量声明变量并在一行中使用它
- java - 驱动器 API:权限 403 超出速率限制
- jquery - 为什么即使参数正确,存储过程也不返回Nothing?
- docker - Jest-dynamoDB 连接在 docker 容器内被拒绝